Aktualizovat du2/program.c

This commit is contained in:
Tomáš Vlček 2026-03-12 02:13:06 +00:00
parent 66c95c9166
commit a3109874ed

View File

@ -39,12 +39,30 @@ int main() {
{
if(sscanf(line, "%d %s %s", &najdPocetHlasov, najdMeno, najdPriezvisko) == 3)
{
najdDuplikatIndex = -1;
//dost neefektivny a predbezny sposob hladania duplikatov..
for (int i = 0; i < x; i++)
{
if (strcmp(DBStudenti[i].meno, najdMeno) == 0)
{
najdDuplikatIndex = i;
break;
}
}
//prekopiruje udaje najdeneho zaznamu do DB
// (LEN ak sscanf() najde vsetky 3 hodnoty)
strcpy(DBStudenti[x].meno, najdMeno);
strcpy(DBStudenti[x].priezvisko, najdPriezvisko);
DBStudenti[x].pocetHlasov = najdPocetHlasov;
x += 1;
// (LEN ak sscanf() najde vsetky 3 hodnoty a nebol najdeny index duplicitneho zaznamu)
if (najdDuplikatIndex < 0)
{
strcpy(DBStudenti[x].meno, najdMeno);
strcpy(DBStudenti[x].priezvisko, najdPriezvisko);
DBStudenti[x].pocetHlasov = najdPocetHlasov;
x += 1;
}
else
{
DBStudenti[x].pocetHlasov += najdPocetHlasov;
}
//(pravdepodobne redundantne) reset nacitanych hodnot na konci kazdeho cyklu
// memset(najdMeno, 0, SIZE);
@ -65,11 +83,6 @@ int main() {
{
break;
}
//vynechaj rovnake predosle zaznamy
if (strcmp(DBStudenti[i].meno, DBStudenti[i-1].meno) == 0)
{
continue;
}
//malo by vypisovat zaznamy takto:
//10_Tomas_Vlcek
printf("%d %s %s\n", DBStudenti[i].pocetHlasov, DBStudenti[i].meno, DBStudenti[i].priezvisko);