![]() |
|
|
![]()
|
|
| Tielvar |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 5.12.2008 Репутация: нет Всего: нет |
Всем привет
Сабж: Надо посчитать среднее арифметическое листьевых вершин бинарного дерева. Узел хранит целое число и два поддерева. Я так прикинул, прийдётся задачу решат ьв два захода - сначала узнать сумму значений в листьевых вершинах, затем узнать их количество, и поделить результаты. То есть имеем три функции. Первая, считает сумму значений в листьях:
Вторая - количество листьев:
Третья, типа мейн:
Причем ни одна функция не работает :((( Помогите пожалуйста. Это сообщение отредактировал(а) Tielvar - 5.12.2008, 14:10 |
||||||
|
|||||||
| adejneka |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 8.7.2005 Где: Москва, Россия Репутация: 9 Всего: 11 |
Проблема состоит в том, что бы четко определиться с представлением дерева. Одно правило есть:
2. Дерево-узел - это список ``(VAL LEFT RIGHT)'', где VAL - число ("значение узла"), LEFT и RIGHT - деревья. Нужно еще основание рекурсии. Я предлагаю такое: 1. Пустое дерево - это символ NIL (= пустой список). Можно определить вспомогательные функции для проверки на пустоту, лист.
|
||||
|
|||||
| Tielvar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 5.12.2008 Репутация: нет Всего: нет |
Спасибо за помощь. Вот что в результате у меня вышло:
Это сообщение отредактировал(а) Tielvar - 22.12.2008, 18:00 |
|||
|
||||
| FlashSk |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 1.2.2010 Репутация: нет Всего: нет |
Помогите решить задачи:
1) Написать функцию, которая по заданому целому числу формирует список двох елементов. Первый елемент списка - ето символьный атом, что обозначает знак числа, второй елемент – остаток от деления числа на 2. 2) Написать функцию, которая для заданних списков lst1 і lst2 возвращает список, который содержит их первые и последние елементи. Порядок прохождения елементов в результуючем списке опредиляется вторым елементом lst2: если ето число, то сначала идуть первый и последний елементи lst1, иначе – первый и последний елементи lst2. 3) Написаьи функцию, которая по двох числах формирует список с трех елементов. Первый елемент – ето результат целочисельнного распредиления чисел, другой єсть результат множения чисел, третий елемент єсть символьный атом, что обозначает знак числа. Функция должна иметь проверку деления на ноль! |
|||
|
||||
| k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: нет Всего: 5 |
Это сообщение отредактировал(а) k0rvin - 14.2.2010, 02:47 -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
![]()
|
| Правила форума LISP | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | LISP | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |