begin process at 2012 05 30 01:54:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Problème avec une boucle while


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème avec une boucle while

vendredi 10 mai 2002 à 13:54:40 | Problème avec une boucle while

arconius

voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il me donne toujours le même chiffre. Voila mon code si vous êtes meilleur que moi se dont je ne doute pas je vous invite à me donner des solutions. Un peu de couleur serai aussi bienvenue. Voila mon code :
je suis concient de ne pas avoir été très clair mais si vous me comprenez c'est que vous ête certainement très douer.

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <time.h>


void main()
{
cout << "bonjour \n";
int x;
debut :;
cout << "Choisissez le nombre de faces de votre de :( 0 pour quitter)\n";
cin >> x;
cout << "vous avez choisis un de a " << x << " faces\n";

if (x < 1)
{
goto end;
}
else
{

prog :;
int choix;
cout << "Appuyer sur 1 pour continuer ou sur 0 pour revenir au choix du nombre de faces \n";
cin >> choix;
if (choix < 1)
{
goto debut;
}
else
{
int z;
cout << "Choisissez le nombre de jet de de que vous desirez :\n";
cin >> z;
cout << "Le programme va maintenant vous donnez " << z << " chiffres au hazard \n";
int y;
while (z > 0)
{
srand((unsigned)time(NULL));
y = (rand()%x)+1;
cout << "Votre jet du de a " << x << " faces est :" << y << "\n";
z--;
}
goto prog;
}
end :;
return 0;
}
}
vendredi 10 mai 2002 à 14:24:45 | Re : Problème avec une boucle while

jcecchi

salut,

il faut que tu sortes le srand(...) de ta boucle while.
il suffit de le mettre une fois au debut du programme pour initialiser rand() une bonne fois pour toute.
Dans ta boucle while, tu reinitialise rand() a chaque boucle avec toujours la meme valeur donc le terme que renvoi rand() reste le meme.
Je te propose ceci :

srand((unsigned)time(NULL));
for(i=0 ; i<z ; ++i)
{
y = (rand()%x) + 1;
cout << ... << y << "\n";
}



-------------------------------
Réponse au message :
-------------------------------

voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il me donne toujours le même chiffre. Voila mon code si vous êtes meilleur que moi se dont je ne doute pas je vous invite à me donner des solutions. Un peu de couleur serai aussi bienvenue. Voila mon code :
je suis concient de ne pas avoir été très clair mais si vous me comprenez c'est que vous ête certainement très douer.

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <time.h>


void main()
{
cout << "bonjour \n";
int x;
debut :;
cout << "Choisissez le nombre de faces de votre de :( 0 pour quitter)\n";
cin >> x;
cout << "vous avez choisis un de a " << x << " faces\n";

if (x < 1)
{
goto end;
}
else
{

prog :;
int choix;
cout << "Appuyer sur 1 pour continuer ou sur 0 pour revenir au choix du nombre de faces \n";
cin >> choix;
if (choix < 1)
{
goto debut;
}
else
{
int z;
cout << "Choisissez le nombre de jet de de que vous desirez :\n";
cin >> z;
cout << "Le programme va maintenant vous donnez " << z << " chiffres au hazard \n";
int y;
while (z > 0)
{
srand((unsigned)time(NULL));
y = (rand()%x)+1;
cout << "Votre jet du de a " << x << " faces est :" << y << "\n";
z--;
}
goto prog;
}
end :;
return 0;
}
}
vendredi 10 mai 2002 à 14:44:13 | Re : Problème avec une boucle while

arconius

Merci beaucoup pour ta réponse claire et précise si tu pouvais aussi m'aider à mettre un peu de couleur se serait sympa merci d'avance.



-------------------------------
Réponse au message :
-------------------------------

salut,

il faut que tu sortes le srand(...) de ta boucle while.
il suffit de le mettre une fois au debut du programme pour initialiser rand() une bonne fois pour toute.
Dans ta boucle while, tu reinitialise rand() a chaque boucle avec toujours la meme valeur donc le terme que renvoi rand() reste le meme.
Je te propose ceci :

srand((unsigned)time(NULL));
for(i=0 ; i<z ; ++i)
{
y = (rand()%x) + 1;
cout << ... << y << "\n";
}



-------------------------------
Réponse au message :
-------------------------------

voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il me donne toujours le même chiffre. Voila mon code si vous êtes meilleur que moi se dont je ne doute pas je vous invite à me donner des solutions. Un peu de couleur serai aussi bienvenue. Voila mon code :
je suis concient de ne pas avoir été très clair mais si vous me comprenez c'est que vous ête certainement très douer.

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <time.h>


void main()
{
cout << "bonjour \n";
int x;
debut :;
cout << "Choisissez le nombre de faces de votre de :( 0 pour quitter)\n";
cin >> x;
cout << "vous avez choisis un de a " << x << " faces\n";

if (x < 1)
{
goto end;
}
else
{

prog :;
int choix;
cout << "Appuyer sur 1 pour continuer ou sur 0 pour revenir au choix du nombre de faces \n";
cin >> choix;
if (choix < 1)
{
goto debut;
}
else
{
int z;
cout << "Choisissez le nombre de jet de de que vous desirez :\n";
cin >> z;
cout << "Le programme va maintenant vous donnez " << z << " chiffres au hazard \n";
int y;
while (z > 0)
{
srand((unsigned)time(NULL));
y = (rand()%x)+1;
cout << "Votre jet du de a " << x << " faces est :" << y << "\n";
z--;
}
goto prog;
}
end :;
return 0;
}
}

vendredi 10 mai 2002 à 20:40:08 | Re : Problème avec une boucle while

jcecchi

desole pour ca je peux pas t'aider.



-------------------------------
Réponse au message :
-------------------------------

Merci beaucoup pour ta réponse claire et précise si tu pouvais aussi m'aider à mettre un peu de couleur se serait sympa merci d'avance.



-------------------------------
Réponse au message :
-------------------------------

salut,

il faut que tu sortes le srand(...) de ta boucle while.
il suffit de le mettre une fois au debut du programme pour initialiser rand() une bonne fois pour toute.
Dans ta boucle while, tu reinitialise rand() a chaque boucle avec toujours la meme valeur donc le terme que renvoi rand() reste le meme.
Je te propose ceci :

srand((unsigned)time(NULL));
for(i=0 ; i<z ; ++i)
{
y = (rand()%x) + 1;
cout << ... << y << "\n";
}



-------------------------------
Réponse au message :
-------------------------------

voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il me donne toujours le même chiffre. Voila mon code si vous êtes meilleur que moi se dont je ne doute pas je vous invite à me donner des solutions. Un peu de couleur serai aussi bienvenue. Voila mon code :
je suis concient de ne pas avoir été très clair mais si vous me comprenez c'est que vous ête certainement très douer.

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <time.h>


void main()
{
cout << "bonjour \n";
int x;
debut :;
cout << "Choisissez le nombre de faces de votre de :( 0 pour quitter)\n";
cin >> x;
cout << "vous avez choisis un de a " << x << " faces\n";

if (x < 1)
{
goto end;
}
else
{

prog :;
int choix;
cout << "Appuyer sur 1 pour continuer ou sur 0 pour revenir au choix du nombre de faces \n";
cin >> choix;
if (choix < 1)
{
goto debut;
}
else
{
int z;
cout << "Choisissez le nombre de jet de de que vous desirez :\n";
cin >> z;
cout << "Le programme va maintenant vous donnez " << z << " chiffres au hazard \n";
int y;
while (z > 0)
{
srand((unsigned)time(NULL));
y = (rand()%x)+1;
cout << "Votre jet du de a " << x << " faces est :" << y << "\n";
z--;
}
goto prog;
}
end :;
return 0;
}
}


samedi 11 mai 2002 à 12:36:23 | Re : Problème avec une boucle while

kjus

essaye de remplacer tous les if + goto par des while, c beaucoup plus propre et plus instructif :=)
***raph***


-------------------------------
Réponse au message :
-------------------------------

desole pour ca je peux pas t'aider.



-------------------------------
Réponse au message :
-------------------------------

Merci beaucoup pour ta réponse claire et précise si tu pouvais aussi m'aider à mettre un peu de couleur se serait sympa merci d'avance.



-------------------------------
Réponse au message :
-------------------------------

salut,

il faut que tu sortes le srand(...) de ta boucle while.
il suffit de le mettre une fois au debut du programme pour initialiser rand() une bonne fois pour toute.
Dans ta boucle while, tu reinitialise rand() a chaque boucle avec toujours la meme valeur donc le terme que renvoi rand() reste le meme.
Je te propose ceci :

srand((unsigned)time(NULL));
for(i=0 ; i<z ; ++i)
{
y = (rand()%x) + 1;
cout << ... << y << "\n";
}



-------------------------------
Réponse au message :
-------------------------------

voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il me donne toujours le même chiffre. Voila mon code si vous êtes meilleur que moi se dont je ne doute pas je vous invite à me donner des solutions. Un peu de couleur serai aussi bienvenue. Voila mon code :
je suis concient de ne pas avoir été très clair mais si vous me comprenez c'est que vous ête certainement très douer.

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <time.h>


void main()
{
cout << "bonjour \n";
int x;
debut :;
cout << "Choisissez le nombre de faces de votre de :( 0 pour quitter)\n";
cin >> x;
cout << "vous avez choisis un de a " << x << " faces\n";

if (x < 1)
{
goto end;
}
else
{

prog :;
int choix;
cout << "Appuyer sur 1 pour continuer ou sur 0 pour revenir au choix du nombre de faces \n";
cin >> choix;
if (choix < 1)
{
goto debut;
}
else
{
int z;
cout << "Choisissez le nombre de jet de de que vous desirez :\n";
cin >> z;
cout << "Le programme va maintenant vous donnez " << z << " chiffres au hazard \n";
int y;
while (z > 0)
{
srand((unsigned)time(NULL));
y = (rand()%x)+1;
cout << "Votre jet du de a " << x << " faces est :" << y << "\n";
z--;
}
goto prog;
}
end :;
return 0;
}
}





Cette discussion est classée dans : problème, boucle, while, include, cout


Répondre à ce message

Sujets en rapport avec ce message

pourquoi aprés avoir fait une boucle mon textbackground prend tout l'écran ? [ par arconius ] Voila mon prog et après avoir fait une boucle mon text background prend tout l'écran si quelqu'un à une solution se serait sympa merci d'avance#includ boucle while [ par oceane67 ] bonjour, j'ai un probleme avec une boucle while, le code est simple mais je trouve pas le probleme:i=0; j=0; cout cin>>rep; do { if (strcm problème de OutPut [ par NAVIE ] Bonjour, J'écris ce message pour demander de l'aide au sujet des gestions des Input et des Output. En effet, dans un programme que j'ai fabriqué, je m problème d'inclusion de bibliothèques [ par JCShaolan ] Bonjour, en fait je souhaite inclure différentes bibliothèques de fonctions suivants que je sois sous Linux ou Windows et la seule méthode que j'ai tr comprend rien :-( [ par aciid_washor ] Bonjour à tous, j'ai un probleme avec un tableau... Je vais mettre mon code en C, ca sera plus clair... #include#include#define N 3#define M 3float C Problème avec SetLayeredWindowAttributes [ par Oeil_de_taupe ] Bonjour tlm, Lors d'un projet je veux mettre une fenêtre transparente. J'utilise l'API SetLayeredWindowAttributes. Le petit problème c'est que je n linux [ par rawen ] svp vou pouvez m'aider de faire un mini compilateur en langage lex/yacc pour qu'il puisse faire compiler 3 boucles en langage C -la boucle for -la bou "cout" n'affiche rien !!! [ par melkiorlenecrarque ] Salut à tous!voila: les coutVoila un exemple de code ultra simple qui bug chez moi:#include #include int main(){cout<<"je suis ouve Problème pour compiler du c [ par flox39 ] Salut à tous Je suis en galère avec du code qu'on m'a passé je n'arrive pas a le compilerl'erreur c error C2447: missing function header (old-style fo au ras des paquerettes en C++ [ par raro ] bonjour à ceux qui liront cette demande.j'ai 48 ans et j'ai décidé d'apprendre le langage C++ depuis une semaine.j'ai un (petit) probleme à vous soume


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,167 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales