62 lines
1.4 KiB
C
62 lines
1.4 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
#include <ctype.h>
|
|
|
|
void bubbleSort(int arr[], int n){
|
|
int i, j;
|
|
int temp;
|
|
for (i = 0; i < n-1; i++) {
|
|
for (j = 0; j < n - i - 1; j++) {
|
|
if (arr[j] > arr[j + 1]) {
|
|
temp = arr[j];
|
|
arr[j] = arr[j + 1];
|
|
arr[j + 1] = temp;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
int main() {
|
|
char glass [300];
|
|
char divided[6];
|
|
|
|
int numbers[50];
|
|
int counter = 0;
|
|
int counter2 = 0;
|
|
int max_number = 0;
|
|
int max_position = 1;
|
|
|
|
fgets(glass, 300, stdin);
|
|
|
|
for (int i = 0; fgets(glass[i], != '\n'; i++){
|
|
if(glass[i][0] == '-') break;
|
|
|
|
for(int j = 0; glass[i+j] != ' '; j++){
|
|
divided[j] = glass[i+j];
|
|
counter2 = j;
|
|
}
|
|
i += counter2;
|
|
|
|
for (int j = 0; j < strlen(divided); j++){
|
|
divided[i][strlen(divided[i])-1] = '\0';
|
|
if (!isdigit(divided[i][j]) || atoi(divided[i]) < 1){
|
|
goto LABEL;
|
|
}
|
|
}
|
|
numbers[counter++] = atoi(glass[i]);
|
|
if (i == 0) {
|
|
max_number = numbers[counter-1];
|
|
}
|
|
else if(numbers[counter-1] > max_number){
|
|
max_number = numbers[counter-1];
|
|
printf("Súťažiaci č. %d vypil %d pohárov.\n",max_position,max_number);
|
|
}
|
|
}
|
|
LABEL:
|
|
|
|
bubbleSort(numbers, sizeof(numbers)/sizeof(numbers[0]));
|
|
|
|
printf ("Výherca je súťažiaci %d ktorý vypil %d pohárov.\n",max_position,numbers[counter-1]);
|
|
return 0;
|
|
} |