From f30049329ca0ab1ac3a08477569341b50d52bf7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jana=20Kapalkov=C3=A1?= Date: Thu, 16 Apr 2026 13:46:02 +0200 Subject: [PATCH] commit --- du5/program.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/du5/program.c b/du5/program.c index f66cf1e..f13bb6b 100644 --- a/du5/program.c +++ b/du5/program.c @@ -25,10 +25,12 @@ struct Node* read_tree(void) { } struct Node* node = calloc(1, sizeof(struct Node)); if (node == NULL) return NULL; - memcpy(node->value, buffer, SIZE); + strcpy(node->value, buffer); if (buffer[0] != '*') { node->left = read_tree(); + node->right = read_tree(); + if (node->left == NULL || node->right == NULL) { destroy_tree(node); return NULL; @@ -48,7 +50,7 @@ void run_system(struct Node* node) { printf("%s", node->value); if (node->left == NULL && node->right == NULL) { - printf("End\n"); + printf("Koniec\n"); return; } char answer[SIZE]; @@ -71,18 +73,15 @@ int main(void) { return 1; } char sep[SIZE]; - if (fgets(sep, SIZE, stdin) == NULL || (sep[0] != '\n' && sep[0] != '\r')) { - printf("Error: missing blank separator line.\n"); - destroy_tree(root); - return 1; - } + fgets(sep, SIZE, stdin); + int leaves = count_leaves(root); printf("Expert z bufetu to vie.\n"); printf("Pozna %d druhov ovocia a zeleniny.\n", leaves); printf("Odpovedajte 'a' pre prvu moznost alebo 'n' pre druhu moznost.\n"); run_system(root); - destroy_tree(root); + destroy_tree(root); return 0; } \ No newline at end of file