Программа на Clisp

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

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

Здравствуйте, подскажите пожалуйста как написать данный вариант программы. Преподаватель вместе с нами учится этому языку и не может ничем помочь, задания он берет с openedu. Пишем мы на clisp. Вот самое задание:
Прочитать трехмерный массив из стандартного потока ввода. Массив может содержать элементы различных типов – целые, вещественные, комплексные числа, строки, символы, списки, другие массивы. Необходимо найти сумму целых чисел, не делящихся нацело на 5. Если целых чисел в массиве нет, результат – 0. Пример: Дан трехмерный массив #3A(((1.8 5 #\B "may") ("the" 2.25 1.3 4) (17 0 "force" 55)) (("be" #C(0 1) 5.02 99) ("with" 1.1 (#\Y #\N) 0.87) ("you!" #C(2.2 3.3) 42 4.2))) Прочитать его из стандартного потока ввода можно с помощью следующей инструкции: (defparameter arr (read)) Это массив размерности 2x3x4 (вспомните, как узнать размерность массива во время выполнения программы?). В нем содержатся различные элементы, в том числе следующие целые числа: 5 4 17 0 55 99 42 Среди этих чисел есть те, которые не делятся нацело на 5: 4 17 99 42 Их сумма равна 162, этот результат и нужно вывести в стандартный поток вывода.
а вот что я начал писать:
(defvar arr (make-array '(2 3 4) :initial-element 0))
(defparameter arr (read))
(print (arr))
строку входящую я писал так как в примере т.е. (((1.8 5 #\B "may") ("the" 2.25 1.3 4) (17 0 "force" 55)) (("be" #C(0 1) 5.02 99) ("with" 1.1 (#\Y #\N) 0.87) ("you!" #C(2.2 3.3) 42 4.2))) В своём коде я пытался создать в переменную arr массив, потом считать его туда, ну и в конце просто вывести. На что мне интерпретатор пишет: "The function COMMON-LISP-USER::ARR is undefined." Я даже понять не могу. Спасибо всем заранее, что сюда заглянули. На вас последняя надежда.

Решение задачи: «Программа на Clisp»

textual
Листинг программы
(defun foo (array)
  ...)

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


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

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

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