From 01a7e66049dd1732f1ec25df78f2a69acf280b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Ujh=C3=A1zi?= Date: Sun, 12 May 2019 18:08:22 +0000 Subject: [PATCH] =?UTF-8?q?Oprava=20chyb=20na=20podnet=20Richard=20=C5=A0e?= =?UTF-8?q?vc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- program.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/program.c b/program.c index 474d5e4..67f7059 100644 --- a/program.c +++ b/program.c @@ -23,7 +23,7 @@ void pridaj_slovo(struct database* database, char* word); void zobraz_strom(struct database* zobraz); struct database { - char slovo[30]; + char slovo[20]; int count; struct database* left; struct database* right; @@ -85,7 +85,7 @@ void pridaj_slovo(struct database* database, char* word) { while(1) { //porovnaj slovo s tym co je v databaze - comp = strcmp(temp->slovo, word); + comp = strcmp(word, temp->slovo); //ak sa rovna, zvys jeho pocetnost o jeden a opusti funkciu if(comp == 0) { @@ -104,7 +104,7 @@ void pridaj_slovo(struct database* database, char* word) { } //pokial sa na lavej adrese nachadza dalsia bunka, zmen adresu z aktualnej bunky na nu a opakuj cyklus od porovnania slova else { - temp = temp->right; + temp = temp->left; } } //pokial je posledny porovnavany znak noveho slova vacsi nez toho ulozeneho, pracuj s pravou vetvou @@ -161,7 +161,7 @@ void zobraz_strom(struct database* zobraz) { if(zobraz->left == NULL && zobraz->right == NULL) return; //pred tym ako pojdes kontrolovat pravu bunku a vojdes do nej, skontroluj ci pocetnost je viac ako 1 a slovo uz nebolo vypisane (kontrola pre pripad ze vlavo neboli bunky, slovo sa vypisalo, no vpravo este bunky su), vypis slovo a pokracuj v kontrole pritomnosti pravej bunky - if(zobraz->count >= 1 && vypisane == 0) { + if(zobraz->count > 1 && vypisane == 0) { pocet++; printf("%s %d\n", zobraz->slovo, zobraz->count); }