This commit is contained in:
Tančáková 2024-03-20 16:29:47 +01:00
parent 9332a79e65
commit 10913bb511

View File

@ -1,10 +1,8 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define SIZE 100
#define MAX_VOTES 50
#define MAX_NAME_LENGTH 20
// Definícia štruktúry pre uloženie jednej položky databázy
@ -37,28 +35,30 @@ int find_student(struct student *students, int size, const char *name) {
return -1; // Študent nenájdený
}
// Funkcia na generovanie náhodného mena
void generate_random_name(char *name) {
static const char charset[] = "abcdefghijklmnopqrstuvwxyz";
int len = rand() % (MAX_NAME_LENGTH - 1) + 1; // Dĺžka mena (1 až MAX_NAME_LENGTH)
for (int i = 0; i < len; i++) {
name[i] = charset[rand() % (sizeof(charset) - 1)];
}
name[len] = '\0';
}
int main() {
struct student database[SIZE];
memset(database, 0, SIZE * sizeof(struct student));
int size = 0;
srand(time(NULL)); // Inicializácia generátora náhodných čísel
// Zadefinovaný vstup mien a počtu hlasov
char input[][MAX_NAME_LENGTH] = {
"2 Bardos Mrtakrys",
"1 Rita Umhi",
"1 Prylenn Alak",
"10 Lak'hi Elavorg",
"3 Prylenn Alak",
"3 Prylenn Alak",
"3 Prylenn Alak",
"1 Rita Umhi"
};
int input_size = sizeof(input) / sizeof(input[0]);
// Generovanie náhodného vstupu mien a počtu hlasov
for (int i = 0; i < SIZE; i++) {
int votes = rand() % (MAX_VOTES + 1); // Náhodný počet hlasov (0 až MAX_VOTES)
// Spracovanie vstupu
for (int i = 0; i < input_size; i++) {
char name[MAX_NAME_LENGTH];
generate_random_name(name); // Generovanie náhodného mena
int votes;
sscanf(input[i], "%d %s", &votes, name);
int idx = find_student(database, size, name);
if (idx == -1) {
// Študent nie je v databáze, pridáme ho