-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.c
More file actions
47 lines (38 loc) · 1.55 KB
/
main.c
File metadata and controls
47 lines (38 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include "awale.h"
#include <stdio.h>
#include <string.h>
int main() {
AwalePartie partie;
int trou_choisi;
// Initialisation
awale_init(&partie);
printf("--- Debut de la partie d'Awale ---\n");
// Boucle principale du jeu
while (!partie.partie_terminee) {
awale_afficher_plateau(&partie);
// Demander le coup au joueur
printf("Joueur %d, choisissez un trou (0 a 5) dans votre camp: ", partie.joueur_courant);
// Lecture de l'entree
if (scanf("%d", &trou_choisi) != 1) {
// Gestion d'erreur (non-entier)
printf("Entree invalide. Veuillez entrer un nombre.\n");
while (getchar() != '\n'); // Vider le buffer
continue;
}
// Tentative de jouer le coup
if (!awale_jouer_coup(&partie, trou_choisi)) {
// Afficher la raison de l'echec (ici, on donne une erreur generique)
printf("Coup illegal! Veuillez choisir un trou valide et respecter les regles (graine > 0, obligation de nourrir, etc.).\n");
}
}
// Affichage des resultats finaux
printf("\n--- PARTIE TERMINEE ---\n");
awale_afficher_plateau(&partie);
printf("VAINQUEUR: Joueur %d avec %d graines capturees.\n",
partie.vainqueur,
partie.score[partie.vainqueur]);
printf("Perdant: Joueur %d avec %d graines capturees.\n",
1 - partie.vainqueur,
partie.score[1 - partie.vainqueur]);
return 0;
}