From ccd49e57ab7c098fcb382d523c930a351575c344 Mon Sep 17 00:00:00 2001 From: st529yr Date: Wed, 20 Mar 2024 17:36:26 +0100 Subject: [PATCH] funguje --- cv5/program.c | 48 +++++++++++++++++++----------------------------- 1 file changed, 19 insertions(+), 29 deletions(-) diff --git a/cv5/program.c b/cv5/program.c index bfd2ba0..2ea9655 100644 --- a/cv5/program.c +++ b/cv5/program.c @@ -10,45 +10,35 @@ struct student { int votes; }; -int find_student(struct student* students, int size, const char* name) { +// Funkcia na inicializáciu databázy mien študentov s náhodným počtom hlasov +void initialize_database(struct student* database, int size) { + srand(time(NULL)); // Inicializácia generátora náhodných čísel + char names[5][20] = {"Terian Dis", "John Doe", "Jane Smith", "Alice Johnson", "Bob Brown"}; for (int i = 0; i < size; i++) { - if (strcmp(students[i].name, name) == 0) { - return i; - } + strcpy(database[i].name, names[rand() % 5]); // Náhodný výber mena zo zoznamu + database[i].votes = rand() % 21; // Náhodný počet hlasov od 0 do 20 } - return -1; } int main() { struct student database[SIZE]; memset(database, 0, SIZE * sizeof(struct student)); - int size = 0; + int size = 10; // Veľkosť databázy mien študentov - srand(time(NULL)); // Inicializácia generátora náhodných čísel - - // Definícia vstupu - char input[] = "10 Terian Dis\n"; - - // Zobrazenie definície vstupu - printf("Vstup:\n%s\n", input); - - // Čítanie vstupu a vytváranie databázy - int votes; - char name[SIZE]; - sscanf(input, "%d %s %s", &votes, name, name + strlen(name) + 1); // Načítanie počtu hlasov, mena a priezviska - - int id = find_student(database, size, name); - if (id < 0) { - strcpy(database[size].name, name); - database[size].votes = votes; - size++; - } else { - database[id].votes += votes; - } + initialize_database(database, size); // Inicializácia databázy mien študentov // Výpis databázy - printf("\nVysledky:\n"); - printf("%d %s\n", database[0].votes, input + 3); // Vypíše počet hlasov a pôvodný vstup od 4. znaku + printf("Databaza mien studentov s poctom hlasov:\n"); + for (int i = 0; i < size; i++) { + printf("%d %s\n", database[i].votes, database[i].name); + } + + // Spočítanie a výpis celkového počtu hlasov + int total_votes = 0; + for (int i = 0; i < size; i++) { + total_votes += database[i].votes; + } + printf("\nCelkovy pocet hlasov: %d\n", total_votes); return 0; }