Изменить 'du3/program.c'
This commit is contained in:
parent
a1b379b220
commit
cd988d1af1
@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
@ -16,15 +17,21 @@ int main() {
|
|||||||
for(int i = 0; i < 11; i++){
|
for(int i = 0; i < 11; i++){
|
||||||
if(!isdigit(input[i]) && input[i] != '.' && input[i] != '\0' && input[i] != '\n'){
|
if(!isdigit(input[i]) && input[i] != '.' && input[i] != '\0' && input[i] != '\n'){
|
||||||
goto LABEL;
|
goto LABEL;
|
||||||
truth = 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(input[i] != '.' && input[i] != '\n' && input[i] != '\0'){
|
if(input[i] != '.' && input[i] != '\n' && input[i] != '\0'){
|
||||||
numbers[counter1++] = input[i];
|
numbers[counter1++] = input[i];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
date[counter2++] = (int) strtol(numbers, &ptr, 10);
|
date[counter2++] = (int) strtol(numbers, &ptr, 10);
|
||||||
if((counter2 == 1 && (date[0] < 1 || date[0] > 31)) || (counter2 == 2 && (date[1] < 1 || date[1] > 12)) || (counter2 == 2 && date[0] > 29)){
|
if(counter2 == 1 && (date[0] < 1 || date[0] > 31)){
|
||||||
//goto LABEL;
|
goto LABEL;
|
||||||
|
}
|
||||||
|
else if(counter2 == 2 && (date[1] < 1 || date[1] > 12)){
|
||||||
|
goto LABEL;
|
||||||
|
}
|
||||||
|
else if(counter2 == 2 && date[0] > 29){
|
||||||
|
goto LABEL;
|
||||||
}
|
}
|
||||||
else if (counter2 == 3){
|
else if (counter2 == 3){
|
||||||
date[0] += 7;
|
date[0] += 7;
|
||||||
@ -48,12 +55,11 @@ int main() {
|
|||||||
date[0] -= 28;
|
date[0] -= 28;
|
||||||
date[1]++;
|
date[1]++;
|
||||||
}
|
}
|
||||||
//date[2] /= 100;
|
|
||||||
printf("%d.%d.%d\n\n", date[0], date[1], date[2]);
|
printf("%d.%d.%d\n\n", date[0], date[1], date[2]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
counter1 = 0;
|
|
||||||
memset(numbers, '\0', 4);
|
memset(numbers, '\0', 4);
|
||||||
|
counter1 = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
memset(input, '\0', 11);
|
memset(input, '\0', 11);
|
||||||
@ -61,8 +67,8 @@ int main() {
|
|||||||
counter1 = 0, counter2 = 0;
|
counter1 = 0, counter2 = 0;
|
||||||
memset(numbers, '\0', 4);
|
memset(numbers, '\0', 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
LABEL:
|
LABEL:
|
||||||
if(truth) puts("Neplatny datum");
|
if(truth) puts("Neplatny datum");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user