Problème langage C
Utilisateur anonyme
-
UbuntuPR Messages postés 89 Date d'inscription Statut Membre Dernière intervention -
UbuntuPR Messages postés 89 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai encore un problème dans un de mes codes que j'ai fait. Pouvez-vous me dire ce qui ne va pas svp ? Merci d'avance
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
int nombreMystere = 0, nombreEntre = 0, nombre_de_coups = 1, reponse =1, nombre_de_joueurs =0;
const int MAX = 100, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
printf("Bonjour! Nous allons jouer au jeu de + et du -");
printf("Combien de joueurs vont jouer ? Nombre max autorise : 2\n");
scanf("%d", &nombre_de_joueurs);
if (nombre_de_joueurs== 1)
{
do
{
printf("Tres bien vous avez choisi le mode 1 joueur\n");
printf("Dis moi un nombre\n");
scanf("%d", &nombreEntre);
if (nombreEntre < nombreMystere)
{
printf("C'est plus!\n");
nombre_de_coups ++;
}
else if (nombreEntre > nombreMystere)
{
printf ("C'est moins!\n");
nombre_de_coups ++;
}
else
{
printf("Bravo! T'as trouvé en %d fois, nom d'une Roberta!", nombre_de_coups);
printf("Tu veux recommencer ? Tapes 1 pour oui \n Sinon quittes!");
scanf ("%d", &reponse);
}
} while (nombreEntre != nombreMystere || reponse ==1);
}
else if (nombre_de_joueurs ==2)
do
{
printf("Mode 2 joueurs \n");
printf("Le nombre est compris entre 0 et 100\n");
printf("Joueur 1 à toi! Propose un nombre\n");
scanf("%d", nombreEntre);
if (nombreEntre < nombreMystere)
{
printf("C'est plus\n");
nombre_de_coups++;
}
else if (nombreEntre > nombreMystere)
{
printf("C'est moins.\n");
nombre_de_coups++;
}
else
{
printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups);
printf("Joueur maintenant! Pareil! Choisis un nombre!");
scanf("%d", nombreEntre);
}
if (nombreEntre < nombreMystere)
{
printf("C'est plus\n");
nombre_de_coups++;
}
else if (nombreEntre > nombreMystere)
{
printf("C'est moins.\n");
nombre_de_coups++;
}
else
{
printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups);
printf("Veux-tu refaire une partie?\n");
printf("Pour oui tapes 1 sinon quittes!\n");
scanf("%d", &reponse);
}
} while (nombreEntre != nombreMystere || reponse ==1);
return 0;
}
Même si ce sont des professionels,Que ce soit à n'importe quel âge, si on est motivé, on peut faire des ravages, et tous les dépasser!
J'ai encore un problème dans un de mes codes que j'ai fait. Pouvez-vous me dire ce qui ne va pas svp ? Merci d'avance
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ( int argc, char** argv )
{
int nombreMystere = 0, nombreEntre = 0, nombre_de_coups = 1, reponse =1, nombre_de_joueurs =0;
const int MAX = 100, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
printf("Bonjour! Nous allons jouer au jeu de + et du -");
printf("Combien de joueurs vont jouer ? Nombre max autorise : 2\n");
scanf("%d", &nombre_de_joueurs);
if (nombre_de_joueurs== 1)
{
do
{
printf("Tres bien vous avez choisi le mode 1 joueur\n");
printf("Dis moi un nombre\n");
scanf("%d", &nombreEntre);
if (nombreEntre < nombreMystere)
{
printf("C'est plus!\n");
nombre_de_coups ++;
}
else if (nombreEntre > nombreMystere)
{
printf ("C'est moins!\n");
nombre_de_coups ++;
}
else
{
printf("Bravo! T'as trouvé en %d fois, nom d'une Roberta!", nombre_de_coups);
printf("Tu veux recommencer ? Tapes 1 pour oui \n Sinon quittes!");
scanf ("%d", &reponse);
}
} while (nombreEntre != nombreMystere || reponse ==1);
}
else if (nombre_de_joueurs ==2)
do
{
printf("Mode 2 joueurs \n");
printf("Le nombre est compris entre 0 et 100\n");
printf("Joueur 1 à toi! Propose un nombre\n");
scanf("%d", nombreEntre);
if (nombreEntre < nombreMystere)
{
printf("C'est plus\n");
nombre_de_coups++;
}
else if (nombreEntre > nombreMystere)
{
printf("C'est moins.\n");
nombre_de_coups++;
}
else
{
printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups);
printf("Joueur maintenant! Pareil! Choisis un nombre!");
scanf("%d", nombreEntre);
}
if (nombreEntre < nombreMystere)
{
printf("C'est plus\n");
nombre_de_coups++;
}
else if (nombreEntre > nombreMystere)
{
printf("C'est moins.\n");
nombre_de_coups++;
}
else
{
printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups);
printf("Veux-tu refaire une partie?\n");
printf("Pour oui tapes 1 sinon quittes!\n");
scanf("%d", &reponse);
}
} while (nombreEntre != nombreMystere || reponse ==1);
return 0;
}
Même si ce sont des professionels,Que ce soit à n'importe quel âge, si on est motivé, on peut faire des ravages, et tous les dépasser!
A voir également:
- Problème langage C
- Langage ascii - Guide
- Langage binaire - Guide
- Pascal langage - Télécharger - Édition & Programmation
- Langage visual basic - Télécharger - Langages
- Langage basic gratuit - Télécharger - Édition & Programmation
4 réponses
salut
1) envoie ton code avec les balises "code" du forum, comme ça les espaces de début restent et c'est plus lisible
2) peux-tu nous dire directement quel est le problème ?si erreur de compilation, le message d'erreur par exemple ?
1) envoie ton code avec les balises "code" du forum, comme ça les espaces de début restent et c'est plus lisible
2) peux-tu nous dire directement quel est le problème ?si erreur de compilation, le message d'erreur par exemple ?
déjà aucun message d'erreur ca complie normallement. Des que je choisis 1 joueur ca fonctionne ensuite si je ferme que je redemarre et que je chosis le mode 2 joueurs et ben la ca met Propose un nombre enfin ca va jusqu'à propose un nombre etla il y a le curseur qui clignote pour que j'entre le chiffre puis dès que j'appuie sur entrer j'ai un mesage windows qui dit que le programme a eu un probleme ert doit fermer et ca s'arrete brisquement au deuxieme joueur.
Tiens voilà le script en code :
Même si ce sont des professionels,Que ce soit à n'importe quel âge, si on est motivé, on peut faire des ravages, et tous les dépasser!
Tiens voilà le script en code :
#include <stdio.h> #include <stdlib.h> #include <time.h> int main ( int argc, char** argv ) { int nombreMystere = 0, nombreEntre = 0, nombre_de_coups = 1, reponse =1, nombre_de_joueurs =0; const int MAX = 100, MIN = 1; srand(time(NULL)); nombreMystere = (rand() % (MAX - MIN + 1)) + MIN; printf("Bonjour! Nous allons jouer au jeu de + et du -"); printf("Combien de joueurs vont jouer ? Nombre max autorise : 2\n"); scanf("%d", &nombre_de_joueurs); if (nombre_de_joueurs== 1) { do { printf("Tres bien vous avez choisi le mode 1 joueur\n"); printf("Dis moi un nombre\n"); scanf("%d", &nombreEntre); if (nombreEntre < nombreMystere) { printf("C'est plus!\n"); nombre_de_coups ++; } else if (nombreEntre > nombreMystere) { printf ("C'est moins!\n"); nombre_de_coups ++; } else { printf("Bravo! T'as trouvé en %d fois, nom d'une Roberta!", nombre_de_coups); printf("Tu veux recommencer ? Tapes 1 pour oui \n Sinon quittes!"); scanf ("%d", &reponse); } } while (nombreEntre != nombreMystere || reponse ==1); } else if (nombre_de_joueurs ==2) do { printf("Mode 2 joueurs \n"); printf("Le nombre est compris entre 0 et 100\n"); printf("Joueur 1 à toi! Propose un nombre\n"); scanf("%d", nombreEntre); if (nombreEntre < nombreMystere) { printf("C'est plus\n"); nombre_de_coups++; } else if (nombreEntre > nombreMystere) { printf("C'est moins.\n"); nombre_de_coups++; } else { printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups); printf("Joueur maintenant! Pareil! Choisis un nombre!"); scanf("%d", nombreEntre); } if (nombreEntre < nombreMystere) { printf("C'est plus\n"); nombre_de_coups++; } else if (nombreEntre > nombreMystere) { printf("C'est moins.\n"); nombre_de_coups++; } else { printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups); printf("Veux-tu refaire une partie?\n"); printf("Pour oui tapes 1 sinon quittes!\n"); scanf("%d", &reponse); } } while (nombreEntre != nombreMystere || reponse ==1); return 0; }
Même si ce sont des professionels,Que ce soit à n'importe quel âge, si on est motivé, on peut faire des ravages, et tous les dépasser!
Il manque un "&" a un des tes scanf effectivement et si tu veux que ça affiche les bon joueurs initialise une variable numero_joueur par exemple, une autre coup_deux_joueurs qui quand son modulo de deux est nul (
ton code devrait ressembler à ça :
on initialise les variables :
ensuite le code du mode deux joueurs :
Ensuite tu as trop de chose dans ton
en espérant t'avoir aidé.
coup_deux_joueurs%2) c'est au deuxième joueur de joué, et si il est différent de zéro c'est au premier.
ton code devrait ressembler à ça :
on initialise les variables :
int nombreMystere = 0, nombreEntre = 0, nombre_de_coups = 1, reponse =1, nombre_de_joueurs =0,numero_joueurs=1,coups_deux_joueurs=1;
ensuite le code du mode deux joueurs :
else if (nombre_de_joueurs ==2) do { printf("Mode 2 joueurs \n"); printf("Le nombre est compris entre 0 et 100\n"); printf("Joueur %i à toi! Propose un nombre\n",numero_joueurs); scanf("%d", &nombreEntre); coups_deux_joueurs++; if(coups_deux_joueurs%2 ==0) { numero_joueurs = 2; } else { numero_joueurs = 1; } if (nombreEntre < nombreMystere) { printf("C'est plus\n"); nombre_de_coups++; } else if (nombreEntre > nombreMystere) { printf("C'est moins.\n"); nombre_de_coups++; } else { printf("Bravo! Tu as trouvé en %d coups\n", nombre_de_coups); printf("Joueur maintenant! Pareil! Choisis un nombre!"); scanf("%d", nombreEntre); } } while (nombreEntre != nombreMystere || reponse ==1); return 0;
Ensuite tu as trop de chose dans ton
do{}en effet tu devrais sortir
printf("Mode 2 joueurs \n"); printf("Le nombre est compris entre 0 et 100\n");pour que ce soit plus agréable à lire.
en espérant t'avoir aidé.