Partage
  • Partager sur Facebook
  • Partager sur Twitter

Fonction rand() qui renvoie la même valeur

Sujet résolu
    20 septembre 2017 à 22:12:11

    Bonsoir à tous et merci par avance .

    Voila j'essaye de créer un programme qui initialise les valeurs d'un tableau avec des nombres aléatoires.... mais mon tableau final contient les mêmes valeurs. 

    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h> // pour le rand
    const int MAX = 100;
    
    void init(int tab[], int taille);
    
    void init(int tab[], int taille)
    {
       int i = 0;
       int nbgen = 0;
     
       for(i = 0; i < taille; i++)
        {
           srand(time(NULL));
           int nbgen=rand()%(MAX-1+1)+1;  
           tab[i] = nbgen;
        }  
    }
    
    int main (int argc, char *argv[])
    {
    	int i = 0;
    	int taille = 0;
    
    	printf("Selectionner la taille de votre tableau\n");
    	scanf("%d",&taille);
    
    	int tab[taille];
    
    	init(tab,taille);
    
    	printf("[");
    	for(i = 0; i < taille-1; i++)
    	{
    		printf("%d,",tab[i]);
    	}
    	printf("%d]\n",tab[taille-1]);
    
    	return 0;
    }
    
    

    -
    Edité par Kevin777777 20 septembre 2017 à 22:24:14

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      20 septembre 2017 à 22:16:19

      On utilise srand une seule fois et au debut de son programme !
      • Partager sur Facebook
      • Partager sur Twitter

      Fonction rand() qui renvoie la même valeur

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown