Langage C
Résolu
Dark Raveil
Messages postés
49
Statut
Membre
-
HACKER 712 Messages postés 1463 Statut Contributeur -
HACKER 712 Messages postés 1463 Statut Contributeur -
Bonjour,
je vais commencer pour mettre mon code :
Alors je vous explique mon problème qui cocnerne le mode 2 joueurs, quand on a choisi le programme demande au joueur 1 d'entrer un nombre que le joueur 2 devra deviné, le problème c'est qu'une fois le nombre entré, le joueur 2 voit le nombre choisi par le joueur 1, comment faire ?
Merci à tous par avance de votre aide.
je vais commencer pour mettre mon code :
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
long nombreMystere = 0, nombreEntre = 0;
const long MAX = 100, MIN = 1;
long compteur = 0;
long continuerPartie = 1;
long choixPartie;
long nombreChoisi;
long modeJoueur = 0;
// Génération du nombre aléatoire
srand(time(NULL));
printf("~~~~~~~~~~~~~~Mode Joueurs~~~~~~~~~~~~~\n\n\n\n");
printf("1- 1 Joueur\n");
printf("2- 2 Joueurs\n");
printf("\n\n");
scanf("%ld", &modeJoueur);
switch (modeJoueur)
{
case 1 :
printf("Vous avez choisi le mode 1 Joueur.\n");
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
break;
case 2 :
printf("Vous avez choisi le mode 2 Joueurs.\n");
printf("Joueur 1 choisissez un nombre entre 1 et 100\n");
nombreMystere = scanf("%ld", &nombreChoisi);
break;
}
/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */
while (continuerPartie)
{
do
{
// On demande le nombre
printf("Quel est le nombre ? ");
compteur++;
scanf("%ld", &nombreEntre);
// On compare le nombre entré avec le nombre mystère
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere en %ld coups !!!\n\n", compteur);
} while (nombreEntre != nombreMystere);
printf("Voulez vous faire une autre partie ?\n");
printf("1-Oui\n");
printf("2-Non\n");
scanf("%ld", &choixPartie);
switch (choixPartie)
{
case 1 :
printf("Et c'est partie pour une nouvelle partie !!!\n");
break;
continuerPartie = 1;
case 2 :
printf("Eh bien a une prochaine fois !!!\n");
continuerPartie = 0;
break;
}
}
return 0;
}
Alors je vous explique mon problème qui cocnerne le mode 2 joueurs, quand on a choisi le programme demande au joueur 1 d'entrer un nombre que le joueur 2 devra deviné, le problème c'est qu'une fois le nombre entré, le joueur 2 voit le nombre choisi par le joueur 1, comment faire ?
Merci à tous par avance de votre aide.
A voir également:
- Langage C
- Langage ascii - Guide
- Langage binaire - Guide
- Langage visual basic - Télécharger - Langages
- Pascal langage - Télécharger - Édition & Programmation
- Langage basic gratuit - Télécharger - Édition & Programmation
20 réponses
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sinon tu peux ecrire le nombre dans un fichier, et le programme va lire ce nombre....
mais c'est embetant de tout le temps ecrire le nombre dans le fichier...
mais c'est embetant de tout le temps ecrire le nombre dans le fichier...
non tu fais :
scanf ("%i", &nombre);
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
et tu ecris le temps qu'il ne regarde pas...
scanf ("%i", &nombre);
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
et tu ecris le temps qu'il ne regarde pas...
Ouais mais je suis devant un new probleme, ca m affiche l erreur warning C4244: 'fonction' : conversion de 'time_t' en 'unsigned int', perte possible de données avec ce code
Pourriez vous m'indiquer mon erreur svp
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
long nombreMystere = 0, nombreEntre = 0;
long compteur = 0;
long continuerPartie = 1;
long choixPartie;
long nombreChoisi;
long modeJoueur = 0;
long choixNiveau = 0;
long Max = 10000;
// Génération du nombre aléatoire
printf("~~~~~~~~~~~~~~Mode Joueurs~~~~~~~~~~~~~\n\n\n\n");
printf("1- 1 Joueur\n");
printf("2- 2 Joueurs\n");
printf("\n\n");
scanf("%ld", &modeJoueur);
switch (modeJoueur)
{
case 1 :
printf("Vous avez choisi le mode 1 Joueur.\n\n");
printf("Choisissez votre niveau de difficulté\n\n");
pritnf("1- Facile (le nombre sera situé entre 1 et 100)\n\n");
printf("2- Moyen (le nombre sera situé entre 1 et 1000)\n\n");
printf("3- Difficile (le nombre sera situé entre 1 et 10000)\n\n");
scanf("%ld", &choixNiveau);
if (choixNiveau == 1 && modeJoueur == 1)
{
const MAX = 100, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else if (choixNiveau == 2 && modeJoueur == 1)
{
const MAX = 1000, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else (choixNiveau == 3 && modeJoueur == 1)
{
const MAX = 10000, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
break;
case 2 :
printf("Vous avez choisi le mode 2 Joueurs.\n");
printf("Joueur 1 choisissez un nombre entre 1 et 100\n");
nombreMystere = scanf("%ld", &nombreChoisi);
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
break;
}
/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */
while (continuerPartie)
{
do
{
// On demande le nombre
printf("Quel est le nombre ? ");
compteur++;
scanf("%ld", &nombreEntre);
// On compare le nombre entré avec le nombre mystère
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere en %ld coups !!!\n\n", compteur);
} while (nombreEntre != nombreMystere);
printf("Voulez vous faire une autre partie ?\n");
printf("1-Oui\n");
printf("2-Non\n");
scanf("%ld", &choixPartie);
switch (choixPartie)
{
case 1 :
printf("Et c'est partie pour une nouvelle partie !!!\n");
break;
continuerPartie = 1;
case 2 :
printf("Eh bien a une prochaine fois !!!\n");
continuerPartie = 0;
break;
}
}
return 0;
}
Pourriez vous m'indiquer mon erreur svp
alors plusieurs modif a faire...
tu peux mettre tes variables a la suite :
long nombre, nombre1, nombre2;
je crois que c'est char* argv
et pas char** argv
apres ou est ton erreur ? ligne ?
tu peux mettre tes variables a la suite :
long nombre, nombre1, nombre2;
je crois que c'est char* argv
et pas char** argv
apres ou est ton erreur ? ligne ?
nombreMystere = scanf("%ld", &nombreChoisi);
il vaudrait mieux :
scanf("%ld", &nombreChoisi);
nombreMystere = nombreChoisi;
il vaudrait mieux :
scanf("%ld", &nombreChoisi);
nombreMystere = nombreChoisi;
/*
Plus ou Moins
-------------
Réalisé par Dark Raviel
Création le : 23/02/2008
*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
long nombreMystere = 0, nombreEntre = 0;
long compteur = 0;
long continuerPartie = 1;
long choixPartie;
long nombreChoisi;
long modeJoueur = 0;
long choixNiveau = 0;
long Max = 10000, MIN = 1;
// Génération du nombre aléatoire
printf("~~~~~~~~~~~~~~Mode Joueurs~~~~~~~~~~~~~\n\n\n\n");
printf("1- 1 Joueur\n");
printf("2- 2 Joueurs\n");
printf("\n\n");
scanf("%ld", &modeJoueur);
switch (modeJoueur)
{
case 1 :
printf("Vous avez choisi le mode 1 Joueur.\n\n");
printf("Choisissez votre niveau de difficulté\n\n");
pritnf("1- Facile (le nombre sera situé entre 1 et 100)\n\n");
printf("2- Moyen (le nombre sera situé entre 1 et 1000)\n\n");
printf("3- Difficile (le nombre sera situé entre 1 et 10000)\n\n");
scanf("%ld", &choixNiveau);
if (choixNiveau == 1 && modeJoueur == 1)
{
const MAX = 100, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else if (choixNiveau == 2 && modeJoueur == 1)
{
const MAX = 1000, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else (choixNiveau == 3 && modeJoueur == 1)
{
const MAX = 10000, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
break;
case 2 :
printf("Vous avez choisi le mode 2 Joueurs.\n");
printf("Joueur 1 choisissez un nombre entre 1 et 100\n");
scanf("%ld", &nombreChoisi);
nombreMystere = nombreChoisi;
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
break;
}
/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */
while (continuerPartie)
{
do
{
// On demande le nombre
printf("Quel est le nombre ? ");
compteur++;
scanf("%ld", &nombreEntre);
// On compare le nombre entré avec le nombre mystère
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere en %ld coups !!!\n\n", compteur);
} while (nombreEntre != nombreMystere);
printf("Voulez vous faire une autre partie ?\n");
printf("1-Oui\n");
printf("2-Non\n");
scanf("%ld", &choixPartie);
switch (choixPartie)
{
case 1 :
printf("Et c'est partie pour une nouvelle partie !!!\n");
break;
continuerPartie = 1;
case 2 :
printf("Eh bien a une prochaine fois !!!\n");
continuerPartie = 0;
break;
}
}
return 0;
}
attends t avais pas tout le code XD la l erreur est ligne 63 mais je la voit pas pour être franc
je n'ai pas trouvé mais il y a une erreur a la fin :
break;
continuerPartie = 1;
case 2 :
continuerPartie = 1; doit etre dans une case !
break;
continuerPartie = 1;
case 2 :
continuerPartie = 1; doit etre dans une case !
/*
Plus ou Moins
-------------
Réalisé par Dark Raviel
Création le : 23/02/2008
*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
long nombreMystere = 0, nombreEntre = 0;
long compteur = 0;
long continuerPartie = 1;
long choixPartie;
long nombreChoisi;
long modeJoueur = 0;
long choixNiveau = 0;
long Max = 10000, MIN = 1;
// Génération du nombre aléatoire
printf("~~~~~~~~~~~~~~Mode Joueurs~~~~~~~~~~~~~\n\n\n\n");
printf("1- 1 Joueur\n");
printf("2- 2 Joueurs\n");
printf("\n\n");
scanf("%ld", &modeJoueur);
switch (modeJoueur)
{
case 1 :
printf("Vous avez choisi le mode 1 Joueur.\n\n");
printf("Choisissez votre niveau de difficulté\n\n");
pritnf("1- Facile (le nombre sera situé entre 1 et 100)\n\n");
printf("2- Moyen (le nombre sera situé entre 1 et 1000)\n\n");
printf("3- Difficile (le nombre sera situé entre 1 et 10000)\n\n");
scanf("%ld", &choixNiveau);
if (choixNiveau == 1 && modeJoueur == 1)
{
const MAX = 100, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else if (choixNiveau == 2 && modeJoueur == 1)
{
const MAX = 1000, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
else (choixNiveau == 3 && modeJoueur == 1)
{
const MAX = 10000, MIN = 1;
srand(time(NULL)); // Cette ligne me pose problème !!!
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
break;
case 2 :
printf("Vous avez choisi le mode 2 Joueurs.\n");
printf("Joueur 1 choisissez un nombre entre 1 et 100\n");
scanf("%ld", &nombreChoisi);
nombreMystere = nombreChoisi;
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
break;
}
/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */
while (continuerPartie)
{
do
{
// On demande le nombre
printf("Quel est le nombre ? ");
compteur++;
scanf("%ld", &nombreEntre);
// On compare le nombre entré avec le nombre mystère
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere en %ld coups !!!\n\n", compteur);
} while (nombreEntre != nombreMystere);
printf("Voulez vous faire une autre partie ?\n");
printf("1-Oui\n");
printf("2-Non\n");
scanf("%ld", &choixPartie);
switch (choixPartie)
{
case 1 :
printf("Et c'est partie pour une nouvelle partie !!!\n");
continuerPartie = 1;
break;
case 2 :
printf("Eh bien a une prochaine fois !!!\n");
continuerPartie = 0;
break;
}
}
return 0;
}
Voila ^^