completed part 2
This commit is contained in:
parent
165eda59f3
commit
445927fd11
@ -1,2 +1,5 @@
|
|||||||
compile:
|
compile:
|
||||||
gcc initialprog.c -Werror=switch -o initialprog
|
gcc initialprog.c -Werror=switch -o initialprog
|
||||||
|
|
||||||
|
run:
|
||||||
|
./initialprog
|
@ -4,17 +4,17 @@
|
|||||||
FILE *fptr;
|
FILE *fptr;
|
||||||
char line1[10000];
|
char line1[10000];
|
||||||
int floor_number;
|
int floor_number;
|
||||||
|
int flag_a;
|
||||||
|
int char_zero_cross;
|
||||||
enum states{
|
enum states{
|
||||||
START,
|
START,
|
||||||
PROCESS,
|
PROCESS,
|
||||||
END,
|
|
||||||
} state;
|
} state;
|
||||||
|
|
||||||
enum events{
|
enum events{
|
||||||
START_LOOP,
|
START_LOOP,
|
||||||
INCREMENT,
|
INCREMENT,
|
||||||
DECREMENT,
|
DECREMENT,
|
||||||
STOP_LOOP,
|
|
||||||
ERROR_EVENT
|
ERROR_EVENT
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -38,11 +38,8 @@ void step_state(enum events event){
|
|||||||
case DECREMENT:
|
case DECREMENT:
|
||||||
floor_number--;
|
floor_number--;
|
||||||
break;
|
break;
|
||||||
case STOP_LOOP:
|
|
||||||
state = END;
|
|
||||||
break;
|
|
||||||
case ERROR_EVENT:
|
case ERROR_EVENT:
|
||||||
printf("ERROR!");
|
printf("ERROR!\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -55,6 +52,7 @@ void step_state(enum events event){
|
|||||||
|
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
|
flag_a = 0;
|
||||||
floor_number = 0;
|
floor_number = 0;
|
||||||
fptr = fopen("2015_day_1_input.txt", "r");
|
fptr = fopen("2015_day_1_input.txt", "r");
|
||||||
if(fptr == NULL) {
|
if(fptr == NULL) {
|
||||||
@ -76,6 +74,10 @@ while (line1[i] != '\0'){
|
|||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
|
if (floor_number < 0 && flag_a == 0){
|
||||||
|
printf("first zero-crossing is at position %lu\n", i);
|
||||||
|
flag_a = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("\nThe Floor number is: %d\n\n", floor_number);
|
printf("\nThe Floor number is: %d\n\n", floor_number);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user