Un petit coup de pouce pour mon programme svp :)
Résolu
totomacko1
Messages postés
118
Date d'inscription
Statut
Membre
Dernière intervention
-
totomacko1 Messages postés 118 Date d'inscription Statut Membre Dernière intervention -
totomacko1 Messages postés 118 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici ci dessous le début d'un programme dont j'ai enlevé les longs printf. Il a pour but de découvrir si un jeu triche un peu dans ses pourcentages :P
Donc j'explique mon problème, j'aimerai générer une liste de 10 chiffres entre 0 et 100.
Cela commence à "if (Mode = 1)". J'ai mis un compteur afin de répéter 10 fois l'opération, ça marche juste comme sur des roulettes mais le chiffre aléatoire est toujours le même durant ces 10 fois. Une solution svp ? Merci
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int NombreObtenu = 0, Mode = 0,Compteur = 0;
const int MAX = 100, MIN = 0;
printf("Ce petit programme va vous permettre de voir les chances qu'un ordinateur a de tomber entre 0 et 5 pourcents.\nPour ce faire, ce programme va juste generer un nombre au hasard entre 0 et 100.\nEntrez 1 pour generer une dizaine de nombres ou 2 pour en generer en liste infinie puis validez avec Entrer, dans le cas d'une liste infinie, vous pouvez stopper le programme en bougeant la barre sur le cote de la fenetre qui sert a monter ou descendre\n---Menu---\n1:10 nombres\n2:Une infinite de nombre\n\n\n");
scanf("%d", &Mode);
if (Mode = 1)
{
while (Compteur < 10)
{
srand(time(NULL));
NombreObtenu = (rand() % (MAX - MIN + 1)) + MIN;
if (NombreObtenu > 5)
{
printf("Superieur a 5 _ %d\n", NombreObtenu);
}
if (NombreObtenu < 6)
{
printf("Inferieur a 5 _ %d\n", NombreObtenu);
}
Compteur++;
}
}
}
Voici ci dessous le début d'un programme dont j'ai enlevé les longs printf. Il a pour but de découvrir si un jeu triche un peu dans ses pourcentages :P
Donc j'explique mon problème, j'aimerai générer une liste de 10 chiffres entre 0 et 100.
Cela commence à "if (Mode = 1)". J'ai mis un compteur afin de répéter 10 fois l'opération, ça marche juste comme sur des roulettes mais le chiffre aléatoire est toujours le même durant ces 10 fois. Une solution svp ? Merci
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int NombreObtenu = 0, Mode = 0,Compteur = 0;
const int MAX = 100, MIN = 0;
printf("Ce petit programme va vous permettre de voir les chances qu'un ordinateur a de tomber entre 0 et 5 pourcents.\nPour ce faire, ce programme va juste generer un nombre au hasard entre 0 et 100.\nEntrez 1 pour generer une dizaine de nombres ou 2 pour en generer en liste infinie puis validez avec Entrer, dans le cas d'une liste infinie, vous pouvez stopper le programme en bougeant la barre sur le cote de la fenetre qui sert a monter ou descendre\n---Menu---\n1:10 nombres\n2:Une infinite de nombre\n\n\n");
scanf("%d", &Mode);
if (Mode = 1)
{
while (Compteur < 10)
{
srand(time(NULL));
NombreObtenu = (rand() % (MAX - MIN + 1)) + MIN;
if (NombreObtenu > 5)
{
printf("Superieur a 5 _ %d\n", NombreObtenu);
}
if (NombreObtenu < 6)
{
printf("Inferieur a 5 _ %d\n", NombreObtenu);
}
Compteur++;
}
}
}
A voir également:
- Un petit coup de pouce pour mon programme svp :)
- Programme demarrage windows - Guide
- Coup d'un soir avis ✓ - Forum Consommation & Internet
- Mettre en veille un programme - Guide
- Petit 1 comme ² ✓ - Forum Windows
- Offre coup de pouce orange fibre - Accueil - Box & Connexion Internet
4 réponses
Bonjour,
L'opérateur de comparaison en C est ==. Donc if(mode==1)
Le srand() ne doit être appelé qu'une fois. Donc à mettre en dehors de la boucle.
Et enfin il manque le return 0;
Cdlt
L'opérateur de comparaison en C est ==. Donc if(mode==1)
Le srand() ne doit être appelé qu'une fois. Donc à mettre en dehors de la boucle.
Et enfin il manque le return 0;
Cdlt
Merci de ta réponse Freddy
J'avais trouvé la réponse tout seul :)
Et si srand est employé 2 fois mais dans 2 "if" différent c'est pas grave ?
J'avais trouvé la réponse tout seul :)
Et si srand est employé 2 fois mais dans 2 "if" différent c'est pas grave ?
Ce n'est pas Freddy mais Fiddy ;-).
Et si srand est employé 2 fois mais dans 2 "if" différent c'est pas grave ?
Si. La règle est simple : on ne l'appelle qu'une seule fois. Cela bien sûr ne fera pas planter ton programme mais risque de biaiser la génération des nombres. Donc, tu la mets au début (après la déclaration des variables) et cela ne posera aucun problème.
Et si srand est employé 2 fois mais dans 2 "if" différent c'est pas grave ?
Si. La règle est simple : on ne l'appelle qu'une seule fois. Cela bien sûr ne fera pas planter ton programme mais risque de biaiser la génération des nombres. Donc, tu la mets au début (après la déclaration des variables) et cela ne posera aucun problème.