LINUX.ORG.RU

Помогите новичку lisp

 


0

2

Как такой цикл написать:

for (int i = 0; i < строка.length; ++i) {

символ = строка;

новыйсимвол = обработать(символ);

строка = новыйсимвол;

}

Будет еще обработка.



Последнее исправление: glazfywgyvwu (всего исправлений: 1)

во всех лиспах есть аналог for, поэтому так и пишите

onceagain2017
()

Странный у тебя цикл. Зачем меняешь строку, по к-рой итерируешь?

den73 ★★★★★
()
Ответ на: комментарий от Eva
for (int i = 0; i < строка.length; ++i) {
символ = строка;

А у тебя

символ = строка[i]
. Возможно, именно это и имел в виду автор темы, или он просто не умеет пользоваться тегом code, но никто не обязан это разгадывать. Разве только один и тот же человек имеет ники Eva и этот «шурумбурум» :)

den73 ★★★★★
()
Последнее исправление: den73 (всего исправлений: 2)
Ответ на: комментарий от den73

зачем тогда цикл, если это эквивалентно строка = обработать (строка)?

Eva
()

Ты совершенно не понимаешь сути лиспа.
Рыскай в сторону iter и map.

awesomelackware
()

Лол :-) Ну, например так

(for i from 0 to (length строка) (incf i)
   (progn
     (set символ строка)
     (set новыйсимвол (обработать символ))
     (set строка новыйсимвол)))

'(Будет еще обработка)
Лол :-)

anonymous
()
Ответ на: комментарий от anonymous

Нет, не понравилось :-( Я, как процедурное быдло Си-быдло, ничего не понимаю в Лиспе :-(

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.