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

Бинарное дерево (отладка) - C++

Восстановить пароль Регистрация
 
Миша777
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 23
26.06.2012, 15:06     Бинарное дерево (отладка) #1
Прога работает и всё запускает (здесь фрагмент), но, к сожалению, выводит некие символы и т.д. Где что надо поправить?



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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
struct prod
{
  char FI[20];
  int tnum,date,sum;
};
 
FILE *f;
 
struct tree
{
 
  char FI[20];
  int tnum,date,sum;
  prod sel;
  tree *left,*right;
}
*root=NULL;
prod z;
 
void add(tree**root,prod z) // добавление вершины
{
if (*root)
  if (strcmp(z.FI,(*root)->sel.FI)<0)
    add((&(*root)->left),z);
  else add((&(*root)->right),z);
else
    {
     (*root)=new tree;
     (*root)->left=NULL;
     (*root)->right=NULL;
     (*root)->sel=z;
    }
}
 
void write(tree *root) //инфиксный обход (вывод вершины)
{
if (root)
   {
     write(root->left);
     printf("\n є   %-12s  %d   %4d   %7.2f  %7.2f є",root->FI,root->tnum,root->date,root->sum);
     write(root->right);
   }
   getche();
}
 
void poisk(tree *root)  //поиск продавца по фамилии и вывод информации о нём
{
 prod z;
  char fio[30];
 f=fopen("Y:/1g42-xx/Torcev/777.txt","rb");
  root=NULL;
  while(fread(&z,sizeof(z),1,f))
      {//z.nalog=z.plos*stavk[z.zona-1];
       add(&root,z.FI,z.tnum,z.date,z.sum);}
 printf("‚ўҐ¤ЁвҐ д*¬Ё«Ёо\n");
 scanf("%s",&fio);
 printf("ЙНННННННННННННЛНННННННННННННННННЛНННННННННННННЛННННЛНННННННННННННННЛННННННН»\n");
 printf("є    Фамилия Номер продавца Дата Сумма выручки\n");
 printf("МНННННННННННННОНННННННННННННННННОНННННННННННННОННННОНННННННННННННННОННННННН№\n");
 write(&(*root),fio);
 printf("ИНННННННННННННКНННННННННННННННННКНННННННННННННКННННКНННННННННННННННКНННННННј\n");
  fclose(f);
 getch();
}
 
 
void tree() //само дерево
{
char j;
FILE *f;
prod sel;
f=fopen("Y:/1g42-xx/Torcev/777.txt","rb");
while (fread(&sel,sizeof(sel),1,f))
add(&root,sel);
fflush(stdin);
j=getchar();
switch(j)
{
case '1': write(root); break;
case '2': poisk(root); break;  //not complete
}
}
 
 
 
void main()
{
do
{
clrscr();
printf("‚®§**Ја*¦¤Ґ*ЁҐ Їа®¤*ўж* \n");
printf("1 - ‚ў®¤ ¤***ле \n");
printf("2 - ‚лў®¤ Ё*д®а¬*жЁЁ \n");
printf("3 - ‚лў®¤ гЇ®а冷зҐ**®© Ї® бв*¦г а*Ў®вл \n");
printf("4 - ‚лў®¤ гЇ®а冷зҐ**®© Ї® б㬬Ґ ўлагзЄЁ \n");
printf("5 - Бинарное дерево \n");
printf("6 - Выход \n");
 
s=getchar();
switch(s)
{
case '1':input(); break;
case '2':comission(); break;
case '3':sortpuz(); break;
case '4':bin_sort(); break;
case '5':tree(); break;
}
}
while (s!='6');
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2012, 15:06     Бинарное дерево (отладка)
Посмотрите здесь:

Бинарное дерево C++
C++ Бинарное дерево
C++ Дерево бинарное
Бинарное дерево. С++ C++
Бинарное дерево C++
Бинарное дерево C++
C++ бинарное дерево
C++ Бинарное дерево с++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vanomux
3 / 3 / 0
Регистрация: 08.02.2012
Сообщений: 17
27.06.2012, 17:51     Бинарное дерево (отладка) #2
возьми готовую и не парься http://algorithmlib.org/binary_tree
Ksan
26 / 26 / 0
Регистрация: 02.11.2010
Сообщений: 370
27.06.2012, 22:19     Бинарное дерево (отладка) #3
Миша777, CharToOem кури
Yandex
Объявления
27.06.2012, 22:19     Бинарное дерево (отладка)
Ответ Создать тему
Опции темы

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