Форум программистов, компьютерный форум CyberForum.ru

Структура и бинарное дерево. - C++

Восстановить пароль Регистрация
 
Igrek
0 / 0 / 0
Регистрация: 08.06.2010
Сообщений: 26
13.06.2011, 13:51     Структура и бинарное дерево. #1
Задача такая:
На междугородной телефонной станции картотека абонентов, содержащая сведения о телефонах и их владельцах, организована как двоичное дерево. Составить программу, которая:
1) обеспечивает начальное формирование картотеки в виде двоичного дерева;
2) производит вывод всей картотеки;
3) вводит номер телефона и время разговора;
4) выводит извещение на оплату телефонного разговора.

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

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include "stdafx.h"
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct telbook
{
    char name[20];       // Имя абонента
    int phone;           // Номер абонента
    int time;            // Время разговоров по телефону в мин.
    char duty[8];       // Задолжность в руб.
    int d;
    struct telbook *left, *right;
};
 
int _tmain(int argc, _TCHAR* argv[])
{   
    setlocale(0,"RUS");
    const int n=8;
    telbook a,p[n]={
        {"Aaagr",233344,204,"500rur"},
        {"Aabrs",245656,15,"60rur"},
        {"Acorp",209879,44,"140rur"},
        {"Baara",254656,97,"200rur"},
        {"Cisco",345645,523,"1200rur"},
        {"Delph",456456,600,"1250rur"},
        {"Enots",888887,22,"90rur"},
        {"Genak",123454,2,"10rur"}};
 
        telbook root=p[0];
 
 
        
    
    getch();
    return 0;
}
Добавлено через 1 час 17 минут
если у нас номер, то его в правую часть отправляем, если имя, то в левую...
вот думаю что должно быть что то наподобие этого, но не работает...может флаг какой надо, или переменную дополнительную?
C++
1
2
3
4
5
telbook root="qwerty";
        for (int i=0;i<n;i++)
            if (p[i].phone=true)
                p[i].phone->*right;
            else p[i].name->*left;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2011, 13:51     Структура и бинарное дерево.
Посмотрите здесь:

файл, структура, бинарное дерево C++
Бинарное дерево C++
C++ Бинарное дерево
C++ Структура, по строкам построить бинарное дерево поиска
Бинарное дерево C++
Бинарное дерево C++
Структура записанная в бинарное дерево C++
Бинарное дерево C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 16:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru