Вычисление суммы кубов чисел от 25 до 125 - Lisp
Формулировка задачи:
Не так давно начал изучать lisp.Помогите пожалуйста с написанием программы.Составьте программу вычисления суммы кубов чисел от 25 до 125.Если такое возможно,то с комментариями пожалуйста
Но при вводе (sum-qube 25 55) выдает:
EVFUN: Не найдена функция ITER
(пишу в homelisp)
Вообщем,я тут нашел...Похожий вопрос уже задавали
(defun sum-qube (n1 n2) (iter (for i from n1 to n2) (summing (* i i i))))
Решение задачи: «Вычисление суммы кубов чисел от 25 до 125»
textual
Листинг программы
(defun sum-cube (n m) (loop for a from n to m sum (expt a 3))) > (sum-cube 25 125) 61925625 > (sum-cube 2 4) 99
Объяснение кода листинга программы
В коде определена функция sum-cube, которая принимает два аргумента - n и m.
Функция использует цикл loop, который выполняет следующие действия:
- Итерируется по числам от
nдоm(включительно). - Для каждого числа
aвычисляется куб числаaс помощью оператораexpt a 3. - Полученное значение куба числа
aприбавляется к сумме. - После завершения цикла возвращается полученная сумма.
При вызове функции
sum-cubeс аргументами25и125будет вычислена сумма кубов чисел от 25 до 125. При вызове функцииsum-cubeс аргументами2и4будет вычислена сумма кубов чисел от 2 до 4, что равно 99.