Revision: 38645
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at January 6, 2011 04:01 by sanovinic
Initial Code
#include <windows.h>
#include <iostream>
#define MAX_D 10
#define LAMBD -1
#define M_V_P 18
#define R_X 5
#define R_Y 2
#include "ostablo1.h"
using namespace std;
void gotoxy(int x,int y){
COORD coord;
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}
void ispis(node n,tree *t){
node cvor = FirstChildT(n,t);
cout << " " << LabelT(n,t) << endl;
while(cvor!=LAMBD){
ispis(cvor,t);
cvor=NextSiblingT(cvor,t);
}
}
int broji(node n,tree *t){
int br=0;
node cvor = FirstChildT(n,t);
while(cvor!=LAMBD){
br++;
cvor = NextSiblingT(cvor,t);
}
return br;
}
void crtaj(int x,int y,node n,tree *t){
int pomak = broji(n,t);
node cvor = FirstChildT(n,t);
x-=(pomak*pomak);
gotoxy(x,y);
cout << LabelT(n,t);
y+=R_Y;
while(cvor!=LAMBD){
x+=R_X;
crtaj(x-pomak*4,y,cvor,t);
cvor = NextSiblingT(cvor,t);
}
}
int main(){
tree *t;
t=InitT("0",t);
int c, i=1, izb, minus=0;
char str[10];
char greska[MAX_D];
strcpy(greska,"Greska ");
do{
system("cls");
printf(" 1. Dodaj element u stablo\n");
printf(" 2. Ispis stabla\n");
printf(" 3. Obrisi vrijednost iz stabla\n");
printf(" 9.Izlaz ");
printf("\n--------------------\n Izbor : ");
cin >> izb;
system("cls");
printf("\n\n");
switch(izb){
case 1: do{
gotoxy(0,0);
cout << "> "; cin >> c;
system("cls");
if(c!=-1 && c<i-minus){
itoa(i++,str,10);
if(CreateT(str,c,t)){
gotoxy(1,1);
strcat(greska,str);
cout << greska << endl;
strcpy(greska,"Greska ");
}
crtaj(60,2,RootT(t),t);
}
}while(c!=-1);
crtaj(60,2,RootT(t),t);
break;
case 2: ispis(0,t);
break;
case 3: crtaj(60,2,RootT(t),t);
gotoxy(0,0); cout <<"Brisi : "; cin >> c;
minus+=broji(c,t);
DeleteT(c,t);
system("cls");
crtaj(60,2,RootT(t),t);
}
printf("\n\n");
system("pause>NUL");
}while(izb!=9);
}
Initial URL
Initial Description
Initial Title
„prvo dijete, sljedeći brat“
Initial Tags
Initial Language
C++