[C] jeu de labyrinthe (complet)

rachidima18 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
dna.factory Messages postés 26035 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
j'ai creer ce jeu et je vx vos opinions sur ...???
c'est ça le programme
((((
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>


int demander (int nbr_aleatoire);
int i;

int main(void)
{
int number,

essai;
srand(time(0));
number = rand();


printf("La variable aleatoire est : %d\n", number);

system("cls");

while ( i != 100){printf("°");i<20;i++;}
system("cls");
system("color 4d");
printf("Jeu cree par RHD__RCA\n\n");
printf("debut de jeu\n");
printf("\n\t\t veuillez patientez \n\n\t");
printf("Devinette d'un nombre aleatoire\n");
essai = demander(number);
system("color 0c");
printf("\t\t\n\nFelicitations (^-^)! Vous avez trouve la reponse [%d] en %d essais !\n", number, essai);
system ("pause");
return 0;
}
int demander (int nbr_aleatoire)
{
int nb_entre,
nbr_essai = 0,
bmax=32767,
bmin=0;

do
{
do
{
printf("Entrez un nombre entre %d et %d : ", bmin, bmax);
scanf("%d", &nb_entre);
} while ((nb_entre<0)||(nb_entre>32767));

nbr_essai++;

if (nbr_aleatoire > nb_entre)
{ system("color 6f");
printf("Ce nombre est trop petit !\n");
if(bmin < nb_entre)
bmin = nb_entre;
}
else
if (nbr_aleatoire < nb_entre)
{ system("color 5e");
printf("Ce nombre est trop grand !\n");
if(bmax > nb_entre)
bmax = nb_entre;
}
}
while (nbr_aleatoire != nb_entre);

return(nbr_essai);
}

)))))

vos opinions mes chers
A voir également:

1 réponse

dna.factory Messages postés 26035 Date d'inscription   Statut Modérateur Dernière intervention   1 619
 
trois fautes sur un seul mot.. on dit : labyrinthe
deplus ce n'est en rien un labyrinthe.
pour le programme en lui même.. je comprends pas trop l'architecture de ton programme
quel intéret d'afficher le nombre dès le début, même si c'est suivi d'un cls
faut 'encadrer' ta fonction rand pour définir une valeur maximale
comme tu fais si tu rand définie une valeur supérieure à 32767

while ( i != 100){printf("°");i<20;i++;}
je ne comprends pas cette ligne.

printf("Entrez un nombre entre %d et %d : ", bmin, bmax);
scanf("%d", &nb_entre);
} while ((nb_entre<0)||(nb_entre>32767));

quel intéret d'indiquer les valeurs butoir, si au final on peut rentrer n'importe quelle valeur.
de plus, quand tu mets une limitation à une boucle, faut préciser à la personne pourquoi tu ne veut pas de la valeur qu'il a saisie.


quand à la position de la fonction.. elle sert à rien à part dire 'j'ai une fonction..'
elle est appellée une seule fois, donc autant l'inclure directement dans le corps du programme, ça rendra la lecure plus facile.

bref, le programe tournera probablement, mais c'est loin d'etre le mieux qu'on peut faire avec un sujet aussi simple à programmer.
0