Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Lisp Определить функцию, транспонирующую матрицу представленную в виде двухуровневого списка Дано S-выражение, представляющее матрицу NxM в виде двухуровневого списка. Определить функцию, транспонирующую эту матрицу. Например: если дано "((11 12 13)(21 22 23)(31 32 33))", ответом будет "((11 21 31)(12 22 32)(13 23 33))". Помогите решить пожалуйста, не как никак не могу вникнуть в синтаксис данного языка не сталкивался с ним никогда https://www.cyberforum.ru/ lisp/ thread2367642.html Определить функцию для циклического сдвига списка вправо на один элемент Lisp
Дан список. Определить функцию для циклического сдвига списка вправо на один элемент. Использовать только базис Лиспа. Самым простым вариантом путем рекурсии нельзя использовать различные встроенные методы типа last и butlast и др. Например: если дано "(1 2 3 4 5)", ответом будет "(5 1 2 3 4)" Помогите пожалуйста!
Lisp Как отсортировать список строк в Scheme? https://www.cyberforum.ru/ lisp/ thread2366421.html
Как модифицировать программу (selection-sort pred? xs), чтобы она сортировала следующий список строк: (selection-sort string-ci<=? (quote ("C" "C++" "Pascal" "bash" "csh" "zsh" "Haskell" "Lisp" "Assembler"))), где аргументом pred? является предикат двух аргументов, возвращающий #t, если его первый аргумент меньше второго или равен ему, и #f в противном случае. Иными словами, (pred? a b)...
Lisp Напишите функцию, которая спрашивает у пользователя ФИО студента из группы https://www.cyberforum.ru/ lisp/ thread2366015.html
Напишите функцию, которая спрашивает у пользователя ФИО студента из группы (список группы составлен в лабораторной работе №1 ) и выдает следующие данные о нем: 1. год рождения; 2. средний бал; 3. родителей; 4. списки свойств, присвоенные ему раньше. (((1995 22 11) (Krasnoyarsk)(4.0)(5.0)(4.0)) (((Sergeev Sergey Sergeevich) (5 2 1962) (Yandex Taxsi)) ((Antonova Lydmila Alexsandrovna)...
Lisp Работа с фреймами
Сейчас думаю над выводом структуры фрейма. Нужно чтобы выводилось так: Film --- THRILLER --- --- ACTION_MOVIE --- --- --- AZAZAZAZAA --- --- --- FOREIGN_CORRESPONDENT --- --- DETECTIVE The_39_Steps --- COMEDY
Lisp Найти сумму между максимальным и минимальным элементами сложного списка, используя рекурсию https://www.cyberforum.ru/ lisp/ thread2365007.html
Помогите пожалуйста!
Lisp Программа должна искать все числа в диапазоне от a до b, содержащих в десятичной записи не более двух нулей Программа должна искать все числа в диапазоне от a до b, которые содержат не более 2 нулей в десятичной записи https://www.cyberforum.ru/ lisp/ thread2364784.html Lisp Разработать функцию, которая возвращает значение T, если в дереве более n листьев, и NIL в противном случае
Разработать функцию, которая возвращает значение T, если в дереве более n листьев, и NIL в противном случае. n вводится. Среда - HomeLisp
Lisp Построение упорядоченного преддерева из упорядоченного дерева https://www.cyberforum.ru/ lisp/ thread2364631.html
Здравствуйте! Ребята, нужна помощь! Нужно написать рекурсивную функцию, которая из упорядоченного дерева выделяла бы преддерево, т.е. дерево состоящие из всех элементов предшествующих заданному. Пример дерева: (5 (3 (1 nil nil) (4 nil nil)) (7 (6 nil nil) (13 (11 nil nil) (15 nil nil)))) Преддерево относительно х=13: (5 (3 (1 nil nil) (4 nil nil)) (7 (6 nil nil) nil)) Вот как я...
Lisp Найти количество атомов многоуровневого списка на каждом уровне https://www.cyberforum.ru/ lisp/ thread2363205.html
Здравствуйте, нужна помощь, вот задание: Найти количество атомов списка с подсписков. Знаю что можно как-то решить её с помощью 4-5 строк, с использованием mapcar и apply. Вот пример: (defun atoms-count (l) (labels ((iter (l new-l cur-lvl cnt ans) (if (null l) (if (null new-l)
Lisp Упорядоченное дерево
Здравствуйте! Прошу помощи в решении следующей задачи: Определите функцию (ordered Tree), проверяющую является бинарное дерево Tree упорядоченным деревом целых чисел, т. е. число, стоящее в любой вершине дерева, больше любого элемента в левом поддереве и меньше любого элемента в правом поддереве. Указание. Можно использовать вспомогательные функции (ordered_left X Tree) и (ordered_right X...
Lisp Ленивый Факториал (не могу найти ошибку!) Помогите исправить! Не могу найти ошибку (код Scheme): (define (lazy-cdr xs) (force (cdr xs))) (define (comp-helper f expr) (comp-helper f (f expr))) (define (computed-factorial? expression) (comp-helper (lambda (lazy-cdr expression) (lazy-factorial (lazy-cdr expression))) (lazy-factorial (lazy-cdr expression)))) (define (lazy-factorial n) (cond ((= n 0) 1) https://www.cyberforum.ru/ lisp/ thread2361478.html
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,644
Записей в блоге: 13
09.12.2018, 07:22 0

Посчитать количество вершин дерева, которые имеют менее четырёх потомков - Lisp - Ответ 13139762

09.12.2018, 07:22. Показов 1371. Ответов 1
Метки (Все метки)

Ответ

Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(defun count (tree)
  (cond ((null tree) 0)
        (t (+ 1 (count (car tree)) (count (caddr tree))))))  
 
==> COUNT
 
(defun task (tree)
  (cond ((null tree) 0)
        (t (let ((l (count (car tree)))
                 (r (count (caddr tree))))
                (if (< (+ l r) 4) (+ 1 (task (car tree)) (task (caddr tree)))
                                  (+ (task (car tree)) (task (caddr tree))))))))
  
==> TASK
 
(setq *tree* '(((NIL 1 NIL) 3 ((NIL 1 NIL) 2 (NIL 0 NIL))) 6 (((NIL 10 NIL) 11 ((NIL 8 NIL) 12 NIL)) 7 NIL)))
 
 
(task *tree*)
==> 8


Вернуться к обсуждению:
Посчитать количество вершин дерева, которые имеют менее четырёх потомков Lisp
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2018, 07:22
Готовые ответы и решения:

Определить функцию, посчитывающую количество вершин, которые имеют менее четырех потомков
Дано S-ражение, представляющее дерево вида «(Родитель РебенокЛевый Ре- бенокПравый)». Определить...

Определить функцию на Лиспе, подсчитывающую количество вершин, которые имеют более трёх потомков
Дано S-выражение, представляющее дерево вида «(РебенокЛевый Родитель РебенокПравый)». Определить...

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

Выведите номера вершин, у которых количество потомков в левом поддереве не равно количеству потомков в правом
Выведите номера вершин, у которых количество потомков в левом поддереве не равно количеству...

1
09.12.2018, 07:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2018, 07:22
Помогаю со студенческими работами здесь

Посчитать количество листьев и неполных вершин заданного бинарного дерева
Всем привет. Нужна срочно помощь. Вот задание: 1.Посчитать количество листьев и неполных вершин...

Вывести номера вершин, у которых количество потомков в левом поддереве не равно количеству потомков в правом поддереве
Помогите Граф отобразить, путь вывести. Если нет пути, вывести сообщение. Ввод матрицы должен...

Дана строка разделенная пропусками. Подсчитать количество слов которые имеют не менее двух символов 'c'
Помогите решить

посчитать количество слов, которые имеют не меньше двух букв с.
задана строка что складываэца з слов розделеных одним или нескольками пропусками. пощетать...

Посчитать количество пар соседних элементов, которые имеют противоположные знаки
посчитать количество пар соседних элементов, которые имеют противоположные знаки. размерность 200....

Найти в строке слова, которые имеют не менее 3 символов
Что не так? Помогите пожалуйста. s = input('Enter your text: ') count = 0 for i in range...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru