Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 22.02.2017
Сообщений: 67
1

Имеется список чисел, определить функционал, возвращающий список инкрементированных/декрементированных чисел

25.05.2019, 07:23. Показов 1529. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеется список чисел, определить функционал, возвращающий список инкрементированных/декрементированных чисел.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2019, 07:23
Ответы с готовыми решениями:

Разделить исходный список из целых чисел на два списка: список чисел кратных А и список чисел не кратных А
Создайте приложение, которое разделит исходный список из целых чисел на два списка: список чисел...

Разделить исходный список на два списка: список чисел из диапазона [a,b] и список чисел не из заданного диапазона
Создайте приложение, которое разделит исходный список из вещественных чисел на два списка: список...

Ввести с клавиатуры список целых чисел. Найти сумму чисел, которые входят в список по одному разу
Прошу помочь с заданием по Турбо Прологу. Мне кажется, что для людей которые понимают и...

Дан произвольный список чисел. Построить список чисел, в два раза больших
Дан произвольный список чисел. Построить список чисел, в два раза больших

3
Модератор
Эксперт функциональных языков программированияЭксперт Python
36606 / 20334 / 4221
Регистрация: 12.02.2012
Сообщений: 33,653
Записей в блоге: 13
25.05.2019, 08:22 2
Лучший ответ Сообщение было отмечено skorp-zed как решение

Решение

Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(defun f-incr (list &optional (i (lambda (x) (+ x 1))))
   (mapcar i list))
 
==> F-INCR
 
(f-incr '(1 2 3 4))
 
==> (2 3 4 5)
 
 
(defun f-decr (list &optional (d (lambda (x) (- x 1))))
   (mapcar d list))
 
==> F-DECR
 
(f-decr '(1 2 3 4))
 
==> (0 1 2 3)
2
80 / 77 / 8
Регистрация: 19.06.2015
Сообщений: 126
25.05.2019, 16:30 3
Цитата Сообщение от skorp-zed Посмотреть сообщение
возвращающий список инкрементированных/декрементированных чисел
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
(defun incdec (lst mthd)
  (let (rlst)
    (cond ((eq mthd 'inc)
       (dolist (x lst rlst)
         (setf rlst (nconc rlst (list (1+ x))))))
      ((eq mthd 'dec)
       (dolist (x lst rlst)
         (setf rlst (nconc rlst (list (1- x)))))))))
 
CL-USER> (incdec '(3 6 2) 'inc)
(4 7 3)
CL-USER> (incdec '(3 6 2) 'dec)
(2 5 1)
CL-USER> (incdec '(3 6 2) 'incorrect)
NIL
Добавлено через 33 минуты
Так получше даже будет
Lisp
1
2
3
4
5
6
7
8
(defun incdec (lst mthd)
  (let (rlst)
    (dolist (x lst rlst)
      (cond
    ((eq mthd 'inc)
     (setf rlst (nconc rlst (list (1+ x)))))
    ((eq mthd 'dec)
     (setf rlst (nconc rlst (list (1- x)))))))))
Добавлено через 5 минут
Или даже так:
Lisp
1
2
3
4
5
6
7
8
(defun incdec (lst mthd)
  (let (rlst)
    (dolist (x lst rlst)
      (setf rlst
        (cond ((eq mthd 'inc)
           (nconc rlst (list (1+ x))))
          ((eq mthd 'dec)
           (nconc rlst (list (1- x)))))))))
Добавлено через 8 минут
А что если так... Хм...

Lisp
1
2
3
4
5
(defun incdec (lst mthd)
  (let (rlst)
    (dolist (x lst rlst)
      (setf rlst
        (nconc rlst (list (if (eq mthd 'inc) (1+ x) (if (eq mthd 'dec) (1- x)))))))))
Добавлено через 6 минут
А так веселее...
Lisp
1
2
3
4
5
(defun incdec (lst &optional mthd)
  (let (rlst)
    (dolist (x lst rlst)
      (setf rlst
        (nconc rlst (list (if (eq mthd 'dec) (1- x) (1+ x))))))))
2
4699 / 4394 / 380
Регистрация: 12.05.2012
Сообщений: 3,096
25.05.2019, 17:39 4
варианты:
Lisp
1
2
3
4
(defun incc (w) (mapcar #'1+ w))
 
> (incc '(0 1 2 3))
(1 2 3 4)
Lisp
1
2
3
4
(defun decc (w) (mapcar #'1- w))
 
> (decc '(1 2 3 4))
(0 1 2 3)
2
25.05.2019, 17:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2019, 17:39
Помогаю со студенческими работами здесь

Имеется список женихов и список невест. Объединить эти списки в список пар с учетом требований партнерам
Имеется список женихов и список невест. Каждая запись списка содержит пол, имя, возраст, рост, вес,...

Определить функционал создающий список интервалов
Условие задачи: Определить функционал znach( f a b h), создающий список интервалов существования...

Дан список чисел, который может содержать до 100000 чисел. Определите, сколько в нем встречается различных чисел
Помогите решить задачу, пожалуйста. Дан список чисел, который может содержать до 100000 чисел....

Имеется массив чисел, получить список вида {число, количество вхождений числа в массив}
Здравствуйте! Нужна Ваша помощь. имеется массив чисел, получить список вида {число, количество...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru