du3
This commit is contained in:
parent
79e7bf137f
commit
469f204879
61
du3/program.c
Normal file
61
du3/program.c
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
char input[10];
|
||||||
|
char numbers[4];
|
||||||
|
int date[3]
|
||||||
|
int counter1 = 0, counter2 = 0;
|
||||||
|
fgets(input, 10, stdin);
|
||||||
|
|
||||||
|
for(int i = 0; i < 10; i++){
|
||||||
|
if(!isdigit(input[i]) && input[i] != '.' && input[i] != '\n'){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(input[i] != '.' && input[i] != '\n'){
|
||||||
|
numbers[counter1++] = input[i];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
date[counter2++] = atoi(numbers);
|
||||||
|
if(counter2 == 1 && (date[0] < 1 || date[0] > 31)){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if(counter2 == 2 && (date[1] < 1 || date[1] > 12)){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if(counter2 == 2 && date[0] > 29){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if (counter2 == 3){
|
||||||
|
date[1] += 7;
|
||||||
|
if(date[0] > 31 && (date[1] == 1 || date[1] == 3 || date[1] == 5 || date[1] == 7 || date[1] == 8 || date[1] == 10 || date[1] == 12)){
|
||||||
|
date[0] -= 31;
|
||||||
|
date[1]++;
|
||||||
|
if(date[1] > 12){
|
||||||
|
date[1] = 1;
|
||||||
|
date[2]++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(date[0] > 30 && (date[1] == 4 || date[1] == 6 || date[1] == 9 || date[1] == 11)){
|
||||||
|
date[0] -= 30;
|
||||||
|
date[1]++;
|
||||||
|
}
|
||||||
|
if(date[0] > 29 && date[1] == 2 && date[2] % 4 == 0 && (date[2] % 100 != 0 || (date[2] %100 == 0 && date[2] % 400 == 0))){
|
||||||
|
date[0] -= 29;
|
||||||
|
date[1]++;
|
||||||
|
}
|
||||||
|
else if(date[0] > 28 && date[1] == 2){
|
||||||
|
date[0] -= 28;
|
||||||
|
date[1]++;
|
||||||
|
}
|
||||||
|
printf("%d.%d.%d\n", date[0], date[1], date[2]);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
puts("Neplatny datum");
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user