Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*WARNUNGEN SCANF ABSCHALTEN*/
- #define _CRT_SECURE_NO_WARNINGS
- /*KONSTANTEN*/
- #define ZEILEN 6
- #define SPALTEN 7
- #define MAX_FELDER (7*6)
- /*EINBINDEN BENÖTIGTER HEADER*/
- #include <stdio.h>
- /*PROTOTYPEN*/
- int eingabe_spieler(int array[ZEILEN][SPALTEN], int eingabe_x);
- void zahl_erlaubt(int array[ZEILEN][SPALTEN], int eingabe_x,char spielfigur_x, int zeilenstand);
- void feld_drucken(int array[ZEILEN][SPALTEN], char hilfs_array[ZEILEN][SPALTEN], char spielfigur_x);
- // Hilfsfunktion um den Eingabepuffer zu leeren
- void flashStandardInput(void)
- {
- int intCharacter;
- while ((intCharacter = getchar()) != '\n' && intCharacter != EOF);
- }
- int array[6][7];
- char hilfs_array[6][7];
- /*BEGINN DER HAUPTFUNKTION*/
- int main(void)
- {
- /*BENÖTIGTE VARIABLEN*/
- int eingabe_a = 0, eingabe_b = 0, eingabe_c = 0;
- char spielfigur_a = 'A', spielfigur_b = 'B', spielfigur_c = 'C', spielfigur_platzhalter = 0;
- int runde;
- int zeilenstand = (ZEILEN-1);
- /*DRUCKE FELD AUS*/
- feld_drucken(array, hilfs_array, spielfigur_platzhalter);
- /*BEGINNE MIT DER ABFRAGE*/
- for (runde = 0; runde < MAX_FELDER; runde++) {
- printf("EINGABE SPIELER A. Bitte Spalte waehlen\t");
- eingabe_a = (eingabe_spieler(array, eingabe_a) - 1);
- zahl_erlaubt(array, eingabe_a, spielfigur_a, zeilenstand);
- printf("EINGABE SPIELER B. Bitte Spalte waehlen\t");
- eingabe_b = (eingabe_spieler(array, eingabe_b) - 1);
- zahl_erlaubt(array, eingabe_b, spielfigur_b, zeilenstand);
- printf("EINGABE SPIELER C. Bitte Spalte waehlen\t");
- eingabe_c = (eingabe_spieler(array, eingabe_c) - 1);
- zahl_erlaubt(array, eingabe_c, spielfigur_c, zeilenstand);
- }
- return 0;
- }
- /*BEGINN DER NEBENFUNKTIONEN*/
- /*EINGABE DER SPIELER*/
- int eingabe_spieler(int array[ZEILEN][SPALTEN], int eingabe_x)
- {
- scanf_s("%d", &eingabe_x);
- while (eingabe_x > SPALTEN)
- {
- flashStandardInput();
- printf("BITTE EINEN GUELTIGEN BEREICH ANGEBEN!\n");
- scanf_s("%d", &eingabe_x);
- }
- return eingabe_x;
- }
- /*FELD DRUCKEN*/
- void feld_drucken(int array[ZEILEN][SPALTEN], char hilfs_array[ZEILEN][SPALTEN], char spielfigur_x) {
- int i, j;
- printf("\n");
- printf(" 1 2 3 4 5 6 7 \n");
- for (i = 0; i < 6; i++)
- {
- printf("_____________________________\n");
- for (j = 0; j < 7; j++)
- {
- printf("| %c ", hilfs_array[i][j]);
- }
- printf("|\n");
- }
- printf("_____________________________\n");
- }
- /*AUSGABE DES FELDES*/
- void zahl_erlaubt(int array[ZEILEN][SPALTEN], int eingabe_x, char spielfigur_x, int zeilen_stand)
- {
- printf("%d\n", array[5][0]);
- printf("%d", array[5][1]);
- if (array[zeilen_stand][eingabe_x] > 0)
- {
- if (array[(zeilen_stand - 1)][eingabe_x] == 0) //Zeilenstand -1, da wir von 5 abwärts zählen.
- {
- array[(zeilen_stand-1)][eingabe_x] = eingabe_x;
- hilfs_array[(zeilen_stand-1)][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- else if (array[(zeilen_stand - 2)][eingabe_x] == 0 && (array[(zeilen_stand - 1)][eingabe_x] > 0))
- {
- array[(zeilen_stand - 2)][eingabe_x] = eingabe_x;
- hilfs_array[(zeilen_stand - 2)][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- else if (array[(zeilen_stand - 3)][eingabe_x] == 0 && array[(zeilen_stand - 2)][eingabe_x] > 0 && (array[(zeilen_stand - 1)][eingabe_x] > 0))
- {
- array[(zeilen_stand - 3)][eingabe_x] = eingabe_x;
- hilfs_array[(zeilen_stand - 3)][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- else if (array[(zeilen_stand - 4)][eingabe_x] == 0 && array[(zeilen_stand - 3)][eingabe_x] > 0 && array[(zeilen_stand - 2)][eingabe_x] > 0 && (array[(zeilen_stand - 1)][eingabe_x] > 0))
- {
- array[(zeilen_stand - 4)][eingabe_x] = eingabe_x;
- hilfs_array[(zeilen_stand - 4)][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- else if (array[(zeilen_stand - 5)][eingabe_x] == 0 && array[(zeilen_stand - 4)][eingabe_x] > 0 && array[(zeilen_stand - 3)][eingabe_x] > 0 && array[(zeilen_stand - 2)][eingabe_x] > 0 && (array[(zeilen_stand - 1)][eingabe_x] > 0))
- {
- array[(zeilen_stand - 5)][eingabe_x] = eingabe_x;
- hilfs_array[(zeilen_stand - 5)][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- }
- else if(array[zeilen_stand][eingabe_x] == 0)
- {
- array[zeilen_stand][eingabe_x] = eingabe_x;
- hilfs_array[zeilen_stand][eingabe_x] = spielfigur_x;
- feld_drucken(array, hilfs_array, spielfigur_x);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement