Bonjour à tous,
Je chercher à générer des nombres aléatoires dans les bornes d'un intervalle [0 .... mrna_length].
Après quelques recherches sur internet, j'ai fait comme ceci :
J'ai compilé avec la commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 #include <stdio.h> #include <stdlib.h> #include <time.h> #include <math.h> void simulation(int mrna_length, int repeat); int main() { int n_cut = 500 ; int repeat = 10; simulation(n_cut,repeat); return 0; } void simulation(int mrna_length, int repeat){ int i,j,k; for(i=0;i<=repeat;i++){ /* deux façons de générer des nombres aléatoires dans les bornes d'un intervalle */ j = rand()%(mrna_length+1); k= 1 + (int) ((mrna_length) * (rand() / (RAND_MAX + 1.0))); printf("valeur de j : %d\n",j); printf("valeur de k : %d\n",k); } }
Ensuite je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part gcc -Wall -Wextra test.c -O2 -o programme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part ./programme
Cela me sort bien des nombres aléatoires. Jusque là tout va bien.
Mais je suis très étonnée, car lorsque je fais à nouveau gcc puis ./mon programme, j'ai toujours la même liste de valeurs aléatoires, dans le même ordre etc.
Je ne comprends pas pourquoi ?
c'est surement très bête, mais je débute.
Merci pour votre aide !
Partager