Интерактивный туториал в браузере по lisp (новый)

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

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

http://trycode.io/

Решение задачи: «Интерактивный туториал в браузере по lisp (новый)»

textual
Листинг программы
  1.     (define (^2 x) (* x x))
  2.      
  3.     (define (map-lst lst action)
  4.       (cond ((null? lst) '())
  5.             ('t (cons (action (car lst)) (map-lst (cdr lst) action)))))
  6.      
  7.     (display (map-lst '(2 3 4 5) ^2))

Объяснение кода листинга программы

  1. Определена функция ^2, которая принимает один аргумент x и возвращает его возведение в квадрат: (define (^2 x) (* x x))
  2. Определена функция map-lst, которая принимает два аргумента: lst - список, и action - действие, которое нужно применить к каждому элементу списка. Функция возвращает новый список, в котором каждый элемент получен путем применения указанного действия к соответствующему элементу исходного списка. Если список пуст, возвращается пустой список: `(define (map-lst lst action) (cond ((null? lst) '()) ('t (cons (action (car lst)) (map-lst (cdr lst) action)))))
  3. Вызывается функция map-lst с аргументами '(2 3 4 5) (список чисел) и ^2 (действие, которое представляет собой возведение в квадрат). Результат этого вызова функции присваивается переменной result: (display (map-lst '(2 3 4 5) ^2)).
  4. Результат выводится на экран с помощью функции display. В данном случае, на экран будет выведен список [4, 9, 16, 25], так как каждый элемент исходного списка был возведен в квадрат.

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


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

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

8   голосов , оценка 3.75 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут