Allergo Lisp Обработка строк

Узнай цену своей работы

Формулировка задачи:

Прошу помочь разобраться в работе кода ( обработка строк ) как работает , и какой результат будет ?
(setf st1 "M")
(dotimes (j (Length st1) st1)
(if (equalp (CHAR st1 j) #\N )
(setf (CHAR st1 j) #\U)
(setf (CHAR st1 j) #\P)
}
}
-- P

Решение задачи: «Allergo Lisp Обработка строк»

textual
Листинг программы
(setf st1 "M") ; присвоить значение переменной
(dotimes (j (Length st1) st1) ; в цикле j от нуля до длины st1; результат st1
    (if (equalp (CHAR st1 j) #\N ) ; если j-й символ st1 равен 'N'
        (setf (CHAR st1 j) #\U) ; то заменить его на 'U'
        (setf (CHAR st1 j) #\P) ; иначе заменить его на 'P'

Объяснение кода листинга программы

  1. (setf st1 M) — присвоить значение переменной st1 строку M.
  2. (dotimes (j (Length st1) st1) — начать цикл j от 0 до длины st1.
  3. (if (equalp (CHAR st1 j) #\N ) — если j-й символ st1 равен 'N'.
  4. (setf (CHAR st1 j) #\U) — то заменить его на 'U'.
  5. (setf (CHAR st1 j) #\P) — иначе заменить его на 'P'.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5
Похожие ответы