Nombre aléatoires en c

Résolu
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 "
Configuration: Windows XP
Firefox 2.0.0.9

7 réponses

  1. ok pas de souci
    mets ton post en resolu si tu n'as plus de probleme ;)
    0
    1. ça marche san faute.mai pour le doublon c'etai pour jouer la carte de la précision (rires)merci
      0
      1. tu declares une variable d'abord en float
        float nb;

        ensuite
        nb=(float) rand() /RAND_MAX;
        1
        1. commen faire pour generer des nombres entre ]0,1[?
          0
          1. thank you very much on essai et on te tien au couran
            0
            1. c'est pas la bonne syntaxe....
              pour generer un nombre entre 0 et 98
              srand(time(NULL));
              nb=rand()%99;
              0
              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