Je travail sur un algorithme génétique et je viens de rencontrer un problème, je viens de générer une population (au sein de ma structure DNA) durant le même temps j'affiche les valeurs de la population, mais le résultat du premier affichage est différent de celui des deux autres (via display et la seconde méthode d'affichage juste après).
Je vous joins une partie de mon code ainsi que le résultat après compilation.
Ce qui me surprend c'est la différence entre le premier affichage et le dernier...
Si vous avez une suggestion...
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 struct DNA{ int globalValue; int globalWeight; int dna[]; }; void display(int nbrObjet, int people, struct DNA* population) { int i,j; for(i=0;i<people;i++) { for(j=0;j<nbrObjet;j++) { printf("%d", population[i].dna[j]); } printf("\n"); } } struct DNA population[people]; for(i=0;i<people;i++) { for(j=0;j<nbrObjet;j++) { population[i].dna[j] = rand()%2; printf("%d", population[i].dna[j]); } printf("\n"); } printf("\n"); display(nbrObjet, people,population); printf("\n"); for(i=0;i<people;i++) { for(j=0;j<nbrObjet;j++) { printf("%d", population[i].dna[j]); } printf("\n"); }
![]()
Partager