Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
hazak
0 / 0 / 0
Регистрация: 12.12.2009
Сообщений: 7
1

Телефонная книга с++...Я даже не знаю с чего начать.

07.01.2010, 16:19. Просмотров 1963. Ответов 2
Метки нет (Все метки)

Мне нужно сделать телефооную книгу. Программа должна запоминать Имя и Фамилию, если такои контакт уже существует, то выдает соотвествующее сообщение. Данные должны быть в Б дереве(B tree). За ранее блогадарю.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2010, 16:19
Ответы с готовыми решениями:

Телефонная книга. Ошибка доступа к памяти
Всем доброго дня! Есть задача написать телефонную книгу. Поиск в ней...

С чего начать изучения С++
Подскажите пожалуйста с чего начать изучение С++ в какой оболочке и какую...

Программа справочник . С чего начать ?
Решил написать программу справочник для школьного проекта на Borland-де . С...

С чего начать изучение Builder C++
Здравствуйте. Я прошел курсы и прочитал книгу Стивена Прата Лекции и упражнения...

С++Builder 6, с чего начать изучение?
Привет всем!Я решил начать изучать язык С++Builder 6,но не знаю с чего...

2
Aye Aye
370 / 284 / 97
Регистрация: 17.12.2009
Сообщений: 567
07.01.2010, 17:30 2
Лучший ответ Сообщение было отмечено hazak как решение

Решение

деревей на форуме - целый лес ! и шаблоны и конкретные, и на структурах и на классах. и с поиском по ключу и как угодно вообще. так что дерево сам найдешь.
пускай информационное поле каждого узла будет:
C++
1
2
3
4
record info{
         string name; //имя обонента
         long long int number; //номер абонента
};
организуй меню в котором можно будет выбирать - сделать новую запись, вывести на экран все записи и еще что нибудь.
Если пользователь выбрал "сделать новую запись" пройдешься по дереву (бинарное дере поиска по ключу подойдет, ключ - имя челвека) если встретишь совпадение посто можно иключение бросить, что, дескать, такой уже есть. а можно просто функцию написать которая будет возвращать true или false если соответствующий узел найден или нет... а можно прямо в функции добавления записи проверять есть ли аналогичная запись или нет.
например
C++
1
2
3
4
5
6
7
8
bool addrecord(info &I)
{
      if (|.name==name) return 0;
      if (greater(I.name,name) && left) return left->addrecord(I);
      if (less(I.name,name) && right) return right->addrecord(I);
      this=new info(); // типа того что то...
      return 1;
}
и вики как бы говорит

Добавлено через 16 минут
по заданной текущие теме в личку лучше не писать - не удобно.
инклуды...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream> // для вывода на экран. cout, cin
#inlcude <list> //для оздания нескольих вершин на одном уровне Б-дерева. list<node> nodes
//ну тут конечно посложнее бедет чем на первый взгляд
//нужен класс "вершина", и класс узел
class vertex;
class node{
       private:
                 info data;
                 vertex *link;
};
class vertex{
       private:
                 list <node> V;
};
/*                vertex1
                  /     \
              node1      node2
                /           \
           vertex2         vertex3
         /    |    \           \
    node3 node4 node5       node6
*/
это так... навскидку...
кучу методов всеже придется самому дописывать, наверно всетаки достаточно специфичная задача
1
assu
22 / 22 / 2
Регистрация: 29.08.2008
Сообщений: 138
25.01.2010, 07:12 3
Да парни, нагрузили вы конечно парнишку. ему бы для начала что то попроще надо :-)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.01.2010, 07:12

С чего начать создание поисковика
Здравствуйте. Подскажите мне пожалуйста, я хочу создать простенькую прогу по...

С чего начать изучение в C++ Builder 2009
Подскажите пожалуйста с чего начать изучение в среде C++ Builder 2009. Какие...

База данных.Подскажите с чего начать)
Главный почемучка возвращается :).Нужно создать базу данных (вернее программу)...


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

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

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