Nombre aléatoires en c

Résolu
tapsaid Messages postés 60 Date d'inscription   Statut Membre Dernière intervention   -  
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
comment peut-on générer des nombres aleatoires en c.
j'ai utilisé ran(99) pour générer des nombres entre 0 et 98 et le compilateur me sort un error"extra parameter "

7 réponses

mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
tu declares une variable d'abord en float
float nb;

ensuite
nb=(float) rand() /RAND_MAX;
1
tapsaid Messages postés 60 Date d'inscription   Statut Membre Dernière intervention   1
 
voici le cod et l'erreur se trouve dan void expérience(derniere partie) matté pluto




#include<math.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
int n; float p; int numero[100]; float genere[100]; int gain[100]; int cumule[100];

void main()
{int i;void aide(void);void jouer(void);
entree :
clrscr();
printf("\t\t\t JEUX : LES LANCERS DE PIECES\n\t\t ------------------------------\n\n");
printf("___________________________________\n| | |\n");
printf("| 1 | JOUER |\n| | |\n");
printf("-----------------------------------\n| | |\n");
printf("| 2 | AIDE |\n| | |\n");
printf("-----------------------------------\n| | |\n");
printf("| 3 | SORTIR |\n| | |\n");
printf("-----------------------------------\n\n");

do {
printf("\t\tENTRER UN CHIFFRE SELON LE TABLEAU PRECEDANT : ");
scanf("%d",&i); }
while(i!=1&&i!=2&&i!=3);
switch(i)
{ case 1 : jouer();
break;
case 2 : aide();printf("\nAppuyer sur n'importe quelle touche pour revenir au menu principal\n");
getch(); goto entree;
case 3 : goto sortie;
}
scanf("%d",&i);
sortie : ;
}
void aide(void)
{clrscr();
printf("\t\t\t\tAIDE\n\t\t\t ------\n\n");
printf("Ce programme est un jeu qui consiste a la simulation d'un lancer de piece.\nVous devez entrer la probabilit‚ d'avoir pile et le nombre de lancer a effectuer.\nLorsque vous obtenez pile votre gain augmente de 1DH, dans le cas contraire ");
printf("il diminue de 1 DH.");
}
void jouer(void)
{void experience(void);
clrscr();
printf("Entrer le nombre de lancers a effectuer\t");
scanf("%d",&n);
do {
printf("Entrer la probabilit‚ d'obtenir un pile(comprise entre ]0,1[)\t");
scanf("%f",&p); }
while((p<=0)||(p>=1));
experience();
}







void experience(void)
{int i,j;
printf("\n\n\t\t\t1er LANCER\n Appuyer sur une touche pour lancer la piece. ");
getch();genere[0]=(rand(99)+1)/100;
if(genere[0]<p) {gain[0]=-1; printf("\nVous avez obtenu un face. Vous perdez 1DH");}
else {gain[0]=1; printf("\nVous avez obtenu pile. Vous gagnez 1DH");}
cumule[0]=gain[0];
for(i=1;i<n;i++)
{
printf("\n\n\t\t\t%dieme LANCER\nAppuyer sur une touche pour lancer la piece. ",i+1);
getch();genere[i]=(rand(99)+1)/100;
if(genere[i]<p) {gain[i]=-1; printf("\nVous avez obtenu un face. Vous perdez 1DH");}
else {gain[i]=1; printf("\nVous avez obtenu pile. Vous gagnez 1DH");}
cumule[i]=cumule[i-1]+gain[i];
}
printf("\n\n----------------------------------------------------------------------\n");
printf("EXPERIENCES | GAIN | GAIN TOTAL |\n");
for(j=0;j<n;j++)
{
printf("----------------------------------------------------------------------\n");
printf("EXPERIENCE %d | %d | %d |\n",j+1,gain[j],cumule[j]);
}
printf("----------------------------------------------------------------------\n");

if (cumule[n-1]<=0) printf("Vous avez perdu %d dirham(s).",cumule[n-1]);
else printf("Vous avez gagn‚ %d dirham(s).",cumule[n-1]);
}

0
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
c'est pas la bonne syntaxe....
pour generer un nombre entre 0 et 98
srand(time(NULL));
nb=rand()%99;
0
tapsaid Messages postés 60 Date d'inscription   Statut Membre Dernière intervention   1
 
thank you very much on essai et on te tien au couran
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tapsaid Messages postés 60 Date d'inscription   Statut Membre Dernière intervention   1
 
commen faire pour generer des nombres entre ]0,1[?
0
tapsaid Messages postés 60 Date d'inscription   Statut Membre Dernière intervention   1
 
ça marche san faute.mai pour le doublon c'etai pour jouer la carte de la précision (rires)merci
0
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
ok pas de souci
mets ton post en resolu si tu n'as plus de probleme ;)
0