Problème random tableau en C
Résolu
fab_lous
Messages postés
6
Statut
Membre
-
aya_pro -
aya_pro -
Bonjour,
Je suis nouveau dans cette bien vaste communauté d'adeptes de la programmation.
Je suis actuellement en train de mettre en place une procédure en C pour initialiser un tableau de taille fixe tab[N] avec des chiffres aléatoires compris entre 1 et 5.
J'ai déclaré une constante N=5.
J'aimerais donc pouvoir initialiser ce tableau avec des valeurs comprises entre 1 et 5. La difficulté est que je ne veux pas que ces chiffres se retrouvent plusieurs fois dans le tableau puisque la finalité c'est de pouvoir le trier par la suite.
Voici ma procédure:
void shuffle(int tab[N-1]){
int val,i;
for(i=0;i<N;i++){
srand((unsigned) time(NULL));
val=rand()%N;
tab[i]=val;
}
}
Je l'ai créé à partir de documentations glanées par-ci par-là.
A priori srand() sert à vérifier que la valeur affectée précédemment ne soit pas réutilisée.
Quelqu'un peut m'aider?
Merci par avance.
Je suis nouveau dans cette bien vaste communauté d'adeptes de la programmation.
Je suis actuellement en train de mettre en place une procédure en C pour initialiser un tableau de taille fixe tab[N] avec des chiffres aléatoires compris entre 1 et 5.
J'ai déclaré une constante N=5.
J'aimerais donc pouvoir initialiser ce tableau avec des valeurs comprises entre 1 et 5. La difficulté est que je ne veux pas que ces chiffres se retrouvent plusieurs fois dans le tableau puisque la finalité c'est de pouvoir le trier par la suite.
Voici ma procédure:
void shuffle(int tab[N-1]){
int val,i;
for(i=0;i<N;i++){
srand((unsigned) time(NULL));
val=rand()%N;
tab[i]=val;
}
}
Je l'ai créé à partir de documentations glanées par-ci par-là.
A priori srand() sert à vérifier que la valeur affectée précédemment ne soit pas réutilisée.
Quelqu'un peut m'aider?
Merci par avance.
A voir également:
- Problème random tableau en C
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
4 réponses
Bonsoir,
Enfin un truc dans le genre :p
Et puis le srand(), met le dans le main plutôt sinon tu vas réinitialiser le générateur de nombres aléatoires à chaque appelle de la fonction.
void shuffle(int tab[N]){
int i,j,deja;
/* A prevoir ailleurs */
srand((unsigned) time(NULL));
i=0;
while (i<N) {
tab[i]=rand()%N;
deja=0;
for (j=0;j<i;j++) {
if (tab[j]==tab[i]) {
deja=1;
break;
}
}
if (deja==0)
i++;
}
}
Enfin un truc dans le genre :p
Et puis le srand(), met le dans le main plutôt sinon tu vas réinitialiser le générateur de nombres aléatoires à chaque appelle de la fonction.
Salut,
Je ne crois pas que srand() te permette de controller si le nombre soit déjà paru.
Il me semble qu'il sert à initialiser la fonction rand().
Perso, je fairais manuellement le test sur tout le tableau pour voir si le nombre à déjà été utilisé.
@++
Je ne crois pas que srand() te permette de controller si le nombre soit déjà paru.
Il me semble qu'il sert à initialiser la fonction rand().
Perso, je fairais manuellement le test sur tout le tableau pour voir si le nombre à déjà été utilisé.
@++
Merci pour tout.
J'ai casé srand() juste avant l'appel de la procédure dans le main() et ça tourne nickel!
Bye,
@+
J'ai casé srand() juste avant l'appel de la procédure dans le main() et ça tourne nickel!
Bye,
@+
bonjour,
voilà je suis encort en 1er année alort debutante et j'ai un projet sur les differents methodes de tri plus présicement (sell, insertion, extraction, bull)
et j'ai besoin d'aide pour ces programme en C et en utilisant la fonction random que je n'est pas comprise alort si vous pouvais m'aider merçi d'avance
voilà je suis encort en 1er année alort debutante et j'ai un projet sur les differents methodes de tri plus présicement (sell, insertion, extraction, bull)
et j'ai besoin d'aide pour ces programme en C et en utilisant la fonction random que je n'est pas comprise alort si vous pouvais m'aider merçi d'avance