Donc voilà je suis en train d'étudier le C grâce au site du zéro. J'en suis à la fin des fonctions et pour l'instant je comprends bien ce que je fais.
J'essaye de faire ce qui est indiqué (le jeu du plus ou moins) en y incorporant différentes fonctions. L'ensemble marche, mais lorsque l'utilisateur fait un choix dans le menu (en console) le menu se ré-affiche plusieurs fois avant de "valider" le choix.
Citation :
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
long genereNombre(long Min, long Max)
{
long nombre = 0;
nombre = (rand() % (Max - Min + 1)) + Min;
return (nombre);
}
long compareNombres(long nombre_entre, long nombre_mystere, long compteur)
{
if (nombre_entre < nombre_mystere)
printf("C'est plus\n");
else
if (nombre_entre > nombre_mystere)
printf("C'est moins\n");
else printf("Felicitation vous avez trouve le nombre mystere en %ld tentative(s)!\n\n", compteur);
}
long mode_de_jeu()
{
long choix = 0;
printf("--Veuillez choisir un mode de jeu--\n\n");
printf("1. 1 joueur Vs l'ordinateur\n");
printf("2. 2 joueurs\n");
printf("3. Quitter\n");
scanf("%ld", &choix);
return (choix);
}
int main(int argc, char** argv)
{
long nombreMystere = 0, nombreEntre = 0;
const long MAX = 100, MIN = 1;
long choix = 0;
long nombre_mystere_2_joueur = 0;
long nombre_entree_2_joueur = 0;
long compteur = 0;
do
{
switch (mode_de_jeu())
{
case 1:
nombreMystere = genereNombre(MIN, MAX);
do
{
printf("Quel est le nombre mystere ?\n ");
scanf("%ld", &nombreEntre);
compteur++;
compareNombres(nombreEntre, nombreMystere, compteur);
}
while (nombreEntre != nombreMystere);
compteur = 0;
break;
case 2:
printf("Choisissez un nombre \n\n");
scanf("%ld", &nombre_mystere_2_joueur);
printf("Joueur 2 essayez de trouver le nombre mystere !!\n\n");
do
{
scanf("%ld", &nombre_entree_2_joueur);
compteur++;
if (nombre_entree_2_joueur < nombre_mystere_2_joueur)
printf("C'est plus\n");
else
if (nombre_entree_2_joueur > nombre_mystere_2_joueur)
printf("C'est moins\n");
else
printf("Felicitation vous avez trouvez le nombre mystere en %ld tentative(s)\n\n", compteur);
compteur = 0;
}
while (nombre_entree_2_joueur != nombre_mystere_2_joueur);
break;
case 3:
return (0);
break;
default :
printf("Entree non valide\n");
break;
}
}
while (mode_de_jeu() != 3);
system("PAUSE");
return 0;
}
Donc voilà ca doit être quelque chose de très simple pour vous mais moi je trouve pas ^^