Browse Source

wall input

main^2
Joe Lukas Kalb 11 months ago
committed by Peter Wiebe
parent
commit
4f287be714
  1. 20
      src/main/c/labyrinth.c
  2. 1
      src/main/c/labyrinth.h

20
src/main/c/labyrinth.c

@ -26,6 +26,26 @@ void ask_lab_dimensions(unsigned short *len_x, unsigned short *len_y){
*len_y = get_natural_number("Bitte gib die y-Laenge des Labyrinthes an:\n"); *len_y = get_natural_number("Bitte gib die y-Laenge des Labyrinthes an:\n");
} }
short wall(unsigned short *x, unsigned short *y, unsigned short len_x, unsigned short len_y){
char answer;
printf("Moechten Sie die Koordinaten einer weiteren Labyrinthwand angeben? (y/n)\n");
scanf(" %c", &answer);
if (answer == 'n'){
return 1;
}
printf("Bitte geben Sie die Koordinaten von Labyrinthwaenden im Format x, y ein.\n");
scanf("%hu, %hu", x, y);
if (*x >= len_x || *y >= len_y){
printf("Die eingegebenen Koordinaten sind zu gross.\n");
return -1;
}
return 0;
}
void turn_direction_right(Direction *direction){ void turn_direction_right(Direction *direction){
switch (*direction) { switch (*direction) {
case N: case N:

1
src/main/c/labyrinth.h

@ -11,5 +11,6 @@ short lab_can_move(Field_State** field, unsigned short x, unsigned short y, Dire
void show_solution(Field_State** field, unsigned short len_x, unsigned short len_y); void show_solution(Field_State** field, unsigned short len_x, unsigned short len_y);
unsigned short get_natural_number(char text[]); unsigned short get_natural_number(char text[]);
void ask_lab_dimensions(unsigned short *len_x, unsigned short *len_y); void ask_lab_dimensions(unsigned short *len_x, unsigned short *len_y);
short wall(unsigned short *x, unsigned short *y, unsigned short len_x, unsigned short len_y);
#endif // TEST_H #endif // TEST_H
Loading…
Cancel
Save