trem_56_tu
24Messages postés
18 novembre 2007Date d'inscription
9 déc. 2007 à 12:30
bonjour , mype viola je te soumet le programme que j'ai concocter j'ai suivi tes conseille ,mais je n'arrive pas à le faire fonctionner je compte sur toi pour que tu puisse me coooriger et de me signaler les coorectif que je dois lui apporter merci d'avance
voici ce proagramme:
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
/*--------------------------------------
* Programme du jeu mastermind version .
* ------------------------------------- */
/*--------------------------------------
* Les fonctions utiles au
* programme principal
* ------------------------------------- */
// On initialise le cote aleatoire du jeu.
// Disons qu'on utilise l'heure d'execution du
// programme (localtime) pour cela.
void InitialiserAleatoire(void)
{
time_t t_loc;
struct tm *tmp;
time(&t_loc);
tmp= localtime(&t_loc);
srand(tmp->tm_sec);
}
// Fonction testant la fin de la partie
int jeuFinie( pion2,nTours)
{
// Si le joueur 2 trouve la bonne combinaison
// le jeu est finie
if (pion2==combi( ));
return 1;
// Si le nombre de tours est atteint alors le jeu est finie
if (pion2!=combi( ) && nTours==10)
{
printf ("desolé la partie est finie");
}
return 0;
}
//fonction gerant les combinaisons de 5 chiffres compris entre 1 et 4
int combi( )
{
int z;
int aleat; // Sert au tirage aleatoire de la combonaison du joueur 1
// On tire aleatoirement entre 1 et 4
aleat = (rand( ) % (4- 1 + 1)) + 1;
scanf("%d\n",&z);
return z;
}
//fonction de proposition du joueur 2
int proposepion(int pion2)
{
printf(" propose une combinaison joueur 2: ");
scanf ("%d",&pion2);
return pion2;
}
// Fonction qui affiche l'etat de la partie
int affichepartie(proposepion,nTours)
{
int d1,d2,d3,d4,d5;
do
nTours++;
while (nTours !=10);
if (d1!=combi() && d2!=combi( ) && d3!=combi( ) && d4!=combi( ) && d5!=combi( ))
printf ("desolé ,tu dois rejouer");
if (d1==combi())
printf ("seul un pion est bien placé");
else
printf ("la partie continue");
if (d2==combi())
printf ("seul un pion est bien placé");
else
printf ("la partie ne fait que commencer");
if (d1==combi() && d2==combi( ))
printf ("tu as deux pion bien placé");
else
printf ("cherche encore");
if (d3==combi( ))
printf (" seul 1 pion est bien placé");
else
printf ("creuse toi les méninge");
if (d1==combi( ) && d2==combi( ) && d3==combi( ) )
printf("ça devient intéressant tu as trouvé trois pions");
else
printf (" tu t'endort");
if (d1==combi( ) && d3==combi( ))
printf ("tu n'as touvé que deux pions bien placés");
if (d2==combi( ) && d3==combi( ) )
printf ("fait un effort tu n'est qu'à deux pions bien places");
else
printf (" je m' endort");
if (d4==combi( ))
printf ("tu as un pion bien placé");
if (d1==combi( ) && d2==combi( ) && d3== combi( ) && d4==combi( ))
printf ("je sens qu' on va bien s'amuser car tu as bien placé 4 pions");
if (d1==combi( ) && d4==combi( ))
printf("desolé, mais tu n'as que deux pions bien placés");
if (d2==combi( ) && d4==combi( ))
printf("tu as 2 pions bien placés");
if (d3==combi( ) && d4==combi( ))
printf ( " vraiment; tu as que 2 pion bien placés");
if ( d1==combi( ) && d2==combi( ) && d4==combi( ));
printf ("c'est pas mal,tu as 3 pions bien placés");
if (d1==combi( ) && d3==combi( ) && d4==combi( ))
printf (" tu as 3 pions bien placés");
if(d2==combi( ) && d3==combi( ) && d4==combi( ))
printf (" jolie tu as bien placé trois pions");
else
printf (" la partie ne fait que commencer");
if (d5==combi( ))
printf (" tu est loin du compte, tu n,as qu'1 pion bien placé");
if ( d1==combi( ) && d2==combi( ) && d3==combi( ) && d4==combi( ) && d5==combi( ))
printf("super tu as gagné, malheureusement pour moi je suis le perdant");
if ( d1==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d2==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d3==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d4==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if (d1==combi( ) && d2==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d3==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d4==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d2==combi( ) && d3==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d2==combi( ) && d4==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d2==combi( ) && d3== combi( ) && d5==combi( ))
printf ("génial tu as bien placé 4 pions");
if (d1==combi( ) && d2==combi( ) && d4== combi( ) && d5==combi( ))
printf (" ça m'inqiete tu as bien placé 4 pions");
if (d2==combi( ) && d3==combi( ) && d4== combi( ) && d5==combi( ))
printf (" zut! tu as bien placé 4 pions");
if (d1==combi( ) && d3==combi( ) && d4== combi( ) && d5==combi( ))
printf ("warning! tu as bien placé 4 pions");
printf("\n");
printf("--------------------------------------- \n\n");
}
/*Programme Principal
* ------------------------------------- */
int main(void)
{
int c1,c2,c3,c4,c5;
int nTours=10;
int pion2;
// Pour tirer des nombres aleatoires differents,
// on doit faire une petite manip avant tout tirage
InitialiserAleatoire( );
c1=combi( );
c2=combi( );
c3=combi( );
c4=combi( );
c5=combi();
// Affichage de debut de la partie
printf("Que la partie commence \n");
affichepartie( proposepion,combi( ),nTours );
// On attends que l'utilisateur appuie sur la touche enter;
getchar( );
// La course continue tant que le jouuer 2 n' a pas trouve la bonne combinaison ou que les 10 tours ne sont pas atteint
while (jeuFinie(combi( ),pion2, nTours) == 0 );
{
// le joueur 2 propose une comb;
pion2 =proposepion(pion2);
// On affiche la partie;
affichepartie(proposepion ,combi( ),nTours);
// On attends que l'utilisateur appuie sur la touche enter;
getchar( );
}
// Ici, la partie est forcement finie
// Ce qui suit sert a determiner qui est vainqueur
if (nTours!=10)
printf ("continue à chercher joueur 2 ! \n");
{
if(nTours==10)
printf("perdue joueur 2 ! \n");
else
printf("gagné : joueur 2 ! \n");
if (pion2!=combi( ))
printf("le gagnant est :le joueur 1 ! \n");
// Disons pour simplifier
// qu'il faut toujours mettre ceci a la fin du main
return 0;
}
}
voici ce programme:
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
/*--------------------------------------
* Programme du jeu mastermind version .
* ------------------------------------- */
/*--------------------------------------
* Les fonctions utiles au
* programme principal
* ------------------------------------- */
// On initialise le cote aleatoire du jeu.
// Disons qu'on utilise l'heure d'execution du
// programme (localtime) pour cela.
void InitialiserAleatoire(void)
{
time_t t_loc;
struct tm *tmp;
time(&t_loc);
tmp= localtime(&t_loc);
srand(tmp->tm_sec);
}
// Fonction testant la fin de la partie
int jeuFinie( pion2,nTours)
{
// Si le joueur 2 trouve la bonne combinaison
// le jeu est finie
if (pion2==combi( ));
return 1;
// Si le nombre de tours est atteint alors le jeu est finie
if (pion2!=combi( ) && nTours==10)
{
printf ("desolé la partie est finie");
}
return 0;
}
//fonction gerant les combinaisons de 5 chiffres compris entre 1 et 4
int combi( )
{
int z;
int aleat; // Sert au tirage aleatoire de la combonaison du joueur 1
// On tire aleatoirement entre 1 et 4
aleat = (rand( ) % (4- 1 + 1)) + 1;
scanf("%d\n",&z);
return z;
}
//fonction de proposition du joueur 2
int proposepion(int pion2)
{
printf(" propose une combinaison joueur 2: ");
scanf ("%d",&pion2);
return pion2;
}
// Fonction qui affiche l'etat de la partie
int affichepartie(proposepion,nTours)
{
int d1,d2,d3,d4,d5;
do
nTours++;
while (nTours !=10);
if (d1!=combi( ) && d2!=combi( ) && d3!=combi( ) && d4!=combi( ) && d5!=combi( ))
printf ("desolé ,tu dois rejouer");
if (d1==combi( ))
printf ("seul un pion est bien placé");
else
printf ("la partie continue");
if (d2==combi( ))
printf ("seul un pion est bien placé");
else
printf ("la partie ne fait que commencer");
if (d1==combi( ) && d2==combi( ))
printf ("tu as deux pion bien placé");
else
printf ("cherche encore");
if (d3==combi( ))
printf (" seul 1 pion est bien placé");
else
printf ("creuse toi les méninge");
if (d1==combi( ) && d2==combi( ) && d3==combi( ) )
printf("ça devient intéressant tu as trouvé trois pions");
else
printf (" tu t'endort");
if (d1==combi( ) && d3==combi( ))
printf ("tu n'as touvé que deux pions bien placés");
if (d2==combi( ) && d3==combi( ) )
printf ("fait un effort tu n'est qu'à deux pions bien places");
else
printf (" je m' endort");
if (d4==combi( ))
printf ("tu as un pion bien placé");
if (d1==combi( ) && d2==combi( ) && d3== combi( ) && d4==combi( ))
printf ("je sens qu' on va bien s'amuser car tu as bien placé 4 pions");
if (d1==combi( ) && d4==combi( ))
printf("desolé, mais tu n'as que deux pions bien placés");
if (d2==combi( ) && d4==combi( ))
printf("tu as 2 pions bien placés");
if (d3==combi( ) && d4==combi( ))
printf ( " vraiment; tu as que 2 pion bien placés");
if ( d1==combi( ) && d2==combi( ) && d4==combi( ));
printf ("c'est pas mal,tu as 3 pions bien placés");
if (d1==combi( ) && d3==combi( ) && d4==combi( ))
printf (" tu as 3 pions bien placés");
if(d2==combi( ) && d3==combi( ) && d4==combi( ))
printf (" jolie tu as bien placé trois pions");
else
printf (" la partie ne fait que commencer");
if (d5==combi( ))
printf (" tu est loin du compte, tu n,as qu'1 pion bien placé");
if ( d1==combi( ) && d2==combi( ) && d3==combi( ) && d4==combi( ) && d5==combi( ))
printf("super tu as gagné, malheureusement pour moi je suis le perdant");
if ( d1==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d2==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d3==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if ( d4==combi( ) && d5==combi( ))
printf("tu as 2 pions bien placés");
if (d1==combi( ) && d2==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d3==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d4==combi( ) && d5==combi())
printf (" tu as 3 pions bien placés");
if (d2==combi( ) && d3==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d2==combi( ) && d4==combi( ) && d5==combi( ))
printf (" tu as 3 pions bien placés");
if (d1==combi( ) && d2==combi( ) && d3== combi( ) && d5==combi( ))
printf ("génial tu as bien placé 4 pions");
if (d1==combi( ) && d2==combi( ) && d4== combi( ) && d5==combi( ))
printf (" ça m'inqiete tu as bien placé 4 pions");
if (d2==combi( ) && d3==combi( ) && d4== combi( ) && d5==combi( ))
printf (" zut! tu as bien placé 4 pions");
if (d1==combi( ) && d3==combi( ) && d4== combi( ) && d5==combi( ))
printf ("warning! tu as bien placé 4 pions");
printf("\n");
printf("--------------------------------------- \n\n");
}
/*Programme Principal
* ------------------------------------- */
int main(void)
{
int c1,c2,c3,c4,c5;
int nTours=10;
int pion2;
// Pour tirer des nombres aleatoires differents,
// on doit faire une petite manip avant tout tirage
InitialiserAleatoire( );
c1=combi( );
c2=combi( );
c3=combi( );
c4=combi( );
c5=combi( );
// Affichage de debut de la partie
printf("Que la partie commence \n");
affichepartie( proposepion,combi( ),nTours );
// On attends que l'utilisateur appuie sur la touche enter;
getchar( );
// La course continue tant que le jouuer 2 n' a pas trouve la bonne combinaison ou que les 10 tours ne sont pas atteint
while (jeuFinie(combi(),pion2, nTours) == 0 );
{
// le joueur 2 propose une comb;
pion2 =proposepion(pion2);
// On affiche la partie;
affichepartie(proposepion ,combi( ),nTours);
// On attends que l'utilisateur appuie sur la touche enter;
getchar( );
}
// Ici, la partie est forcement finie
// Ce qui suit sert a determiner qui est vainqueur
if (nTours!=10)
printf ("continue à chercher joueur 2 ! \n");
{
if(nTours==10)
printf("perdue joueur 2 ! \n");
else
printf("gagné : joueur 2 ! \n");
if (pion2!=combi( ))
printf("le gagnant est :le joueur 1 ! \n");
// Disons pour simplifier
// qu'il faut toujours mettre ceci a la fin du main
return 0;
}
}