Bonjour à tous ! . pouvez vous me donner votre avis sur mon code ?
il s'agit du TP du jeu du plus ou du moins amélioré. comme il n'y a pas de correction sur le site je voulais avoir des avis. merci d'avance !
PS : je n'ai pas encore étudié les fonctions et les tableaux. je n'ai utilisé que des conditions et des boucles.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char *argv[])
{
int tentative, nbreJoueurs, difficultePartie, nbreMax, echec = 1, nouvellePartie = 1, nombreMystere, nbreTentatives = 1;
const int MIN =1;
while (nouvellePartie)
{
nbreJoueurs = 0;
difficultePartie = 0;
printf("=== Choix du nombre de joueurs ==== \n1 - 1 joueur \n2 - 2 joueurs\n");
while (!(nbreJoueurs == 1 || nbreJoueurs == 2))
{
scanf("%d", &nbreJoueurs);
if (nbreJoueurs == 1)
{
printf("Ok ! Vous venez de selectionner le mode \"1 joueur\" \n");
}
else if (nbreJoueurs == 2)
{
printf("Ok ! Vous venez de selectionner le mode \"2 joueurs\" \n");
}
else
{
printf("Je n'ai pas compris votre saisi ! Veuillez selectionner le mode de la partie svp !\n");
}
}
printf("=== Choix de la difficulte de la partie \n1 - entre 1 et 100 \n2 - entre 1 et 1000 \n3 - entre 1 et 10000\n");
while (!(difficultePartie == 1 || difficultePartie == 2 || difficultePartie == 3))
{
scanf("%d", &difficultePartie);
if (difficultePartie == 1)
{
nbreMax = 100;
}
else if (difficultePartie == 2)
{
nbreMax = 1000;
}
else if (difficultePartie ==3)
{
nbreMax = 10000;
}
else
{
printf("Je n'ai pas compris votre saisi ! Veuillez saisir votre choix svp !\n");
}
}
printf("C'est parti !\n");
if (nbreJoueurs == 1)
{
srand(time(NULL));
nombreMystere = (rand() % (nbreMax - MIN + 1)) + MIN;
}
else
{
do
{
printf("Veuillez saisir le nombre a deviner :\n");
scanf("%d", &nombreMystere);
if (!(nombreMystere > 1 && nombreMystere < nbreMax ))
{
printf("Le nombre mystere doit etre compris entre 1 et %d !\n", nbreMax);
}
} while (!(nombreMystere > 1 && nombreMystere < nbreMax));
}
printf("Veuillez saisir un nombre entre 1 et %d.\n", nbreMax);
scanf("%d", &tentative);
if (tentative == nombreMystere)
{
printf("Waw ! Quelle chance ! Vous avez trouve du premier coup !\n");
}
else
{
while (echec)
{
if (tentative > 1 && tentative < nombreMystere && tentative < nbreMax)
{
printf("C'est plus !\n");
scanf("%d", &tentative);
nbreTentatives++;
}
else if (tentative > 1 && tentative > nombreMystere && tentative < nbreMax )
{
printf("C'est moins !\n");
scanf("%d", &tentative);
nbreTentatives++;
}
else if (tentative == nombreMystere)
{
printf("Bravo ! vous avez trouve le nombre mystere en %d tentatives\n", nbreTentatives);
echec = 0;
}
else
{
printf("Le nombre doit être compris entre 1 et %d ! Veuillez recommencer ! \n", nbreMax);
scanf("%d", &tentative);
nbreTentatives++;
}
}
}
printf("Voulez vous lancer une autre partie ? Tapez 1 pour OUI et 0 pour NON !\n");
scanf("%d", &nouvellePartie);
if (nouvellePartie)
{
printf("Ok ! c'est reparti !\n");
}
else if (nouvellePartie == 0)
{
printf("Ok pas de souci ! Au revoir !\n");
}
else
{
printf("Je regrette mais je n'ai pas saisi votre reponse.. au revoir !\n");
}
}
return 0;
}
Tu as déjà posté ce sujet dans les 24 dernières heures et tu n'as pas attendu la réponse à ton dernier message. Le seul avis que je peux donner à ce stade est la question suivante: Est-ce que le programme fonctionne? Si oui, fonctionne-t-il à ta satisfaction? Quand tu auras appris les fonctions et les tableaux, tu pourras essayer de simplifier ton code.
Le Tout est souvent plus grand que la somme de ses parties.
Les doublons nuisent au bon fonctionnement du forum et sont donc interdits. Si vous vous êtes trompé de section, il suffit de signaler votre sujet au staff pour qu'il le déplace au bon endroit.
Le Tout est souvent plus grand que la somme de ses parties.