Разложение числа на сумму трех кубов - Lisp
Формулировка задачи:
Помогите пожалуйста с задачкой, заранее спасибо.
Представить число в виде суммы кубов 3х чисел
Решение задачи: «Разложение числа на сумму трех кубов»
textual
Листинг программы
CL-USER 5 > (defun task (n) (let ((m (truncate (expt n (/ 1.0 3.0)))) (res nil)) (dotimes (i m res) (dotimes (j (- m i) t) (dotimes (k (- m j) t) (let ((ii (+ i 1)) (jj (+ j i 1)) (kk (+ k j 1))) (when (= n (+ (expt ii 3) (expt jj 3) (expt kk 3))) (push (list ii jj kk) res)))))))) TASK CL-USER 6 > (task 216) ((4 5 3) (3 5 4) (3 4 5))
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д