powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Организация рекурсивных вычислений в XLisp.
2 сообщений из 2, страница 1 из 1
Организация рекурсивных вычислений в XLisp.
    #36611559
Андрюхин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет! Помогите пожалуйста реализовать средствами Lisp рекурсивную функцию UFunc для этого задания---->составить список из n+1 первых положительных чисел, кратных трем( Исследовать возможность применения функции print для получения отладочной информации в процессе выполнения отдельного рекурсивного вызова функции.Записать результат выполнения функции UFunc В файл outdata.txt.


Но для выполнения этого задания необходимо использовать след системные функции..
1)Задание локальных символов: let;
2)Условные предложения и логические функции: cond, if, when, unless, and, or, not.
3)Отладка(трассировка вызова)рекурсивныз функций: trace, untrace.
4)Работа с потоками: open, read, print, close.


Сделали, но я не понимаю как она работает(можете код проги прокомментить?)..я не знаю как запустить прогу((.есть не которые не доработк вот к примеру результат выполнения функции UFunc в файл не сохраняет..вернее даже не реализовано, помогите пожалуйста исправить(((

вот код

CL-USER> (defun ufunc (n base &optional acc)
(if (< n 1)
acc
(ufunc (- n 1) base (cons (* n base) acc))))
UFUNC
CL-USER> (ufunc 10 3)
(3 6 9 12 15 18 21 24 27 30)
CL-USER> (trace ufunc)
(UFUNC)
CL-USER> (ufunc 10 3)
0: (UFUNC 10 3)
1: (UFUNC 9 3 (30))
2: (UFUNC 8 3 (27 30))
3: (UFUNC 7 3 (24 27 30))
4: (UFUNC 6 3 (21 24 27 30))
5: (UFUNC 5 3 (18 21 24 27 30))
6: (UFUNC 4 3 (15 18 21 24 27 30))
7: (UFUNC 3 3 (12 15 18 21 24 27 30))
8: (UFUNC 2 3 (9 12 15 18 21 24 27 30))
9: (UFUNC 1 3 (6 9 12 15 18 21 24 27 30))
10: (UFUNC 0 3 (3 6 9 12 15 18 21 24 27 30))
10: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
9: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
8: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
7: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
6: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
5: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
4: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
3: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
2: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
1: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
0: UFUNC returned (3 6 9 12 15 18 21 24 27 30)
(3 6 9 12 15 18 21 24 27 30)
CL-USER>
...
Рейтинг: 0 / 0
Организация рекурсивных вычислений в XLisp.
    #36611950
Фотография SQL_Lamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрюхин,


Типа - намек: Напиши в консоли:
Код: plaintext
CL-USER> (cons (*  10   3 ) nil)
и думаю, после этого тебе станет понятно, как работает эта функция(очень простая, кстати).
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Организация рекурсивных вычислений в XLisp.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]