Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 23
1

Написать функцию, которая проверяет образует ли список убывающую последовательность

05.12.2016, 12:17. Просмотров 493. Ответов 6
Метки нет (Все метки)


Написать функцию, которая проверяет расположены ли числовые элементы списка или одномерного массива в порядке убывания. Помогите пожалуйста!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2016, 12:17
Ответы с готовыми решениями:

3. Написать программу, которая проверяет, представляют ли элементы введенного с клавиатуры массива убывающую последовательность
Написать программу, которая проверяет, представляют ли элементы введенного с клавиатуры массива...

Написать функцию, которая возвращает 0, если массив образует нисходящую последовательность
Написать функцию, которая возвращает 0, если массив образует нисходящую последовательность, в...

Написать функцию, которая возвращает 0, если массив образует нисходящую последовательность
Написать функцию, которая возвращает 0, если массив образует нисходящую последовательность, в...

Если данный набор образует убывающую последовательность
Дано целое число и набор из N вещественных чисел. Если данный набор образует убывающую...

6
4478 / 4192 / 350
Регистрация: 12.05.2012
Сообщений: 2,952
05.12.2016, 12:38 2
для списка:
Lisp
1
2
3
4
5
6
(defun decreasing (w) (eval (cons '> w)))
 
> (decreasing '(3 2 1))
T
> (decreasing '(3 2 2))
NIL
Добавлено через 7 минут
варианты:
Lisp
1
2
3
4
(defun decreasing (w) (when w (eval (cons '> w))))
 
> (decreasing '())
NIL
Добавлено через 2 минуты
Lisp
1
2
3
4
(defun decreasing (w) (if w (eval (cons '> w)) t))
 
> (decreasing '())
T
Добавлено через 2 минуты
Lisp
1
2
3
4
5
6
7
8
(defun decreasing (w) (when w (apply #'> w)))
 
> (decreasing '(3 2 1))
T
> (decreasing '(3 2 2))
NIL
> (decreasing '())
NIL
2
Модератор
Эксперт Python
28362 / 15262 / 3010
Регистрация: 12.02.2012
Сообщений: 24,986
Записей в блоге: 4
05.12.2016, 14:16 3
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
(defun task (lst)
  (apply '> lst))
 
==> TASK
 
(task '(11 10 9 8 7))
 
==> T
 
(task '(11 10 9 8 17))
 
==> NIL
Добавлено через 2 минуты
Но, если по-честному, то:

Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
(defun task (lst)
  (cond ((null (cdr lst)) t)
        ((> (car lst) (cadr lst)) (task (cdr lst)))
        (t nil)))
 
==> TASK
(task '(11 10 9 8 17))
 
==> NIL
(task '(11 10 9 8 7))
 
==> T
 
(task '(11 10 9 8 7 7))
 
==> NIL
3
4478 / 4192 / 350
Регистрация: 12.05.2012
Сообщений: 2,952
06.12.2016, 11:36 4
как вариант:
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
(defun decreasing (w)
  (cond ((null (cdr w)))
        ((> (car w) (cadr w)) (decreasing (cdr w)))
        (t nil)))
 
> (decreasing '(3 2 1))
T
> (decreasing '(3 2 2))
NIL
> (decreasing '(3))
T
> (decreasing '())
T
Добавлено через 33 секунды
Lisp
1
2
3
4
5
6
7
8
9
10
11
(defun decreasing (w)
  (if (cdr w) (when (> (car w) (cadr w)) (decreasing (cdr w))) t))
 
> (decreasing '(3 2 1))
T
> (decreasing '(3 2 2))
NIL
> (decreasing '(3))
T
> (decreasing '())
T
1
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 23
06.12.2016, 20:22  [ТС] 5
а если будут буквенные символы?
0
4478 / 4192 / 350
Регистрация: 12.05.2012
Сообщений: 2,952
06.12.2016, 21:46 6
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
(defun decreasing (w)
  (when (some #'numberp w)
    (decr (remove-if-not #'numberp w))))
 
(defun decr (w)
  (cond ((null (cdr w)))
        ((> (car w) (cadr w)) (decr (cdr w)))
        (t nil)))
 
> (decreasing '(a 3 b 2 c 1 d))
T
> (decreasing '(a 3 b 2 c 2 d))
NIL
> (decreasing '(3))
T
> (decreasing '(a))
NIL
> (decreasing '())
NIL
2
Модератор
Эксперт Python
28362 / 15262 / 3010
Регистрация: 12.02.2012
Сообщений: 24,986
Записей в блоге: 4
07.12.2016, 08:27 7
Lisp
1
2
(defun task (lst)
  (apply '> (remove-if-not 'numberp lst)))
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.12.2016, 08:27

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Проверить, образует ли данный набор убывающую последовательность
Дано целое число N (> 1) и набор из N вещественных чисел. Проверить, образует ли данный набор...

Проверить образует ли набор чисел убывающую последовательность
Помогите решить задачу. Впервые сталкиваюсь с наборами чисел и не знаю как решать (не используя...

Если набор элементов образует убывающую последовательность, то вывести 0
3. Дано целое число N(>1) и набор из N вещественных чисел. если данный набор образует убывающую...

Если данный набор образует убывающую последовательность, то вывести 0
Попрошу полностью решить эти задачки. Спосибо. 2. Дано целое число N и набор из N вещественных...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.