pvjc25/du1/program.c

79 lines
2.3 KiB
C

#include <stdio.h>
int main() {
char c = getchar();
char loading_string[999] = {};
int string_index = 0;
while(c != EOF) {
loading_string[string_index] = c;
string_index++;
c = getchar();
}
loading_string[string_index] = '\0';
int iterating_index = 0;
int user_counter = 1;
int max_number_user_pair[2] = {0,0};
int repeating_values[999] = {};
int repeating_values_index = 0;
int starting_index = 0;
int last = 0;
int is_space = 0;
while(starting_index<string_index) {
//int empty = 0;
while (loading_string[iterating_index] != ' ' && loading_string[iterating_index] != '\0' && loading_string[iterating_index] != '\n' && loading_string[iterating_index] != '-') {
iterating_index++;
is_space = 0;
}
if (loading_string[iterating_index] == '\n') last=1;
if (loading_string[iterating_index] == '-') {
starting_index = string_index;
continue;
}
int number_size = iterating_index-starting_index;
int current_number = 0;
if (is_space) {
iterating_index++;
starting_index = iterating_index;
continue;
}
//if (number_size == 0) empty = 1;
is_space = 0;
for (int l=0;l<number_size;l++) {
int temporary_number = loading_string[starting_index+l]-'0';
for (int k=number_size-1-l;k>0;k--) {
temporary_number = temporary_number * 10;
}
current_number += temporary_number;
}
//if (!empty) {
if (current_number > max_number_user_pair[0]) {
max_number_user_pair[0] = current_number;
max_number_user_pair[1] = user_counter;
for (int i = 0;i<repeating_values_index;i++) {
repeating_values[i] = 0;
}
repeating_values_index = 0;
repeating_values[repeating_values_index] = user_counter;
repeating_values_index++;
} else if (current_number == max_number_user_pair[0]) {
repeating_values[repeating_values_index] = user_counter;
repeating_values_index++;
}
is_space = 1;
printf("Súťažiaci č. %d vypil %d pohárov.\n", user_counter, current_number);
user_counter++;
iterating_index++;
starting_index = iterating_index;
if (last) starting_index = string_index+1;
//}
}
for (int i=0;i<repeating_values_index;i++) {
printf("Výherca je súťažiaci %d ktorý vypil %d pohárov.\n",repeating_values[i], max_number_user_pair[0]);
}
if (repeating_values_index == 0) printf("Chyba: Málo platných hodnôt.\n");
return 0;
}