IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Генеалогическое дерево
сообщение
Сообщение #1


Гость






Народ, подскажите, пожалуйста, как решить задачку! :molitva:
Дан файл: Отец->Сын, например,
Миша - сын Паши
Саша - сын Ильи
Илья - сын Гриши
Паша - сын Гриши и т. д. по мужской линии.
Совпадение имен возможно. Нужно составить дерево и выяснить, кто самый плодовитый. Вот так вот :low:
Буду очень благодарна, если подскажите что-нибудь! Мне главное создать, плодовитого я и сама найду!)))
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Цитата
Совпадение имен возможно.

А как тогда дерево строить?
Ну вот например
Вова сын Алекса
Алекс сын Вовы
Вова сын Михаила.

Для такого случая нарисуй дерево...


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 5
Пол: Женский

Репутация: -  0  +


"Вова сын Алекса
Алекс сын Вовы"
Нет, такого не бывает, имена уникальные. Я, наверное, про совпадение непонятно написала. rolleyes.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Раз совпадений не бывает, используя для построения бинарное дерево.
FAQ: бинарные деревья.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 5
Пол: Женский

Репутация: -  0  +


Это то понятно! Но как из таких пар в файле составить дерево? До меня что-то не доходит.... huh.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Ну сначала, получив строку стоит ееразобрать (на первоеимяивторое)
думаю с этим проблемм нет.
Теперль проверяеместь лиунас родитель уже вдереве, если нет,создаемего там, ик нему вподдереве пишем потомка.
Аесли есть родитель ужевдереве, то просто кнемуприписываем вподдерево потомка.Вроде так.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7





Группа: Пользователи
Сообщений: 5
Пол: Женский

Репутация: -  0  +


Да, я совсем забыла, сыновей-то не обязательно двое, может и 10!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






А вот это уже хуже.... sad.gif Но все равно решаемо... Только таком случае твою задачу я бы решал не с помощью дерева, а с помощью списка (каждый элемент которого в свою очередь тоже может быть списком) wacko.gif Выглядеть будет примерно так:

Цитата
{2}
|
{3}- 1 2 3
{2}- {3|2}
          | |
          1 1
          2 2
          3

в фигурных скобках - отцы (которые в свою очередь могут быть и сыновьями)... Только не пугайся, это выглядит сложнее, чем реализуется smile.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


это ты намекаешь на то, что дерево не подойдет?
используй список списков...там можешь что угодно сделатьsmile.gif

p.s. пока яписал,он уже ответил smile.gif

Сообщение отредактировано: Oleg_Z -


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10





Группа: Пользователи
Сообщений: 5
Пол: Женский

Репутация: -  0  +


Да в том-то и дело, что решать надо через дерево!!! Обязательно!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


А чем список списков не дерево?
Протсо не двоичное... а как его назвать не важно...


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12





Группа: Пользователи
Сообщений: 5
Пол: Женский

Репутация: -  0  +


Ну хорошо, как решать через список??
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Гость






Priligy Niederlande
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 24.04.2024 7:10
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name