Bonjour à tous,

Je devrais écrire une fonction qui permet de tirer k fois un nombre entre 1 et 10 et qui ne doit pas tirer deux fois le meme nombre.
Voici mon essai mais ceci ne fonctionne pas!?Le compilateur me renvoie des bugs .
Quelqu'un pourrait-il me guider SVP?
Merci d'avance.

voici le code :
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
 
typedef struct Individu  Individu;
struct Individu
{
	int *Chemin;// les chromosomes
	int distanceTotale;
};
void initialiserIndividu(Individu* individuInitial )  //fonction initialisation de chacun des membres de  la structure Indivdu
{
 
	int k; 
	int Nmax = 10; 
    individuInitial->Chemin = (int*)calloc(sizeof(int),Nmax); 
    for (k = 0 ; k < Nmax ; k++) 
		individuInitial->Chemin[k] = k; // ou bien n'importe quelle autre valeur  
 
//Ensuite on definit un tableau de pointeurs vers chacun de ces elements int **ptr, 
    int **ptr = (int**)calloc(sizeof(int*),Nmax); 
    for (k = 0 ; k < Nmax ; k++) 
    ptr[k] = &individuInitial.chemin[k]; 
 
//on definit un indice temporaire NN qui va  servir a generer un nombre aleatoire dans l'intervalle
//[0,NN] 
int NN = Nmax-1; 
 
int *tmp_ptr; 
int random_index; 
 
for (k = 0;k < Nmax ; k++) 
{ 
//on genere un nombre aleatoire entre 0 et NN, 
random_index = (int)(rand()/(float)RAND_MAX * (NN)); 
 
//Cela definit le premier nombre aleatoire tire, 
printf("%d\n",*ptr[random_index]); 
 
//Ensuite, on fait une permutation entre le pointeur tire et le dernier element du tableau de pointeurs 
tmp_ptr = ptr[Nmax-1-k]; 
ptr[Nmax-1-k] = ptr[random_index]; 
ptr[random_index] = tmp_ptr; 
 
//on decremente N--, de sorte que le dernier element du tableau de pointeur 
//(qui est maintenant celui qui vient d'etre tire) ne puisse pas etre a nouveau selectionne. 
NN--; 
} 
 
int main ()
{
	Individu populationInitial;
	initialiserIndividu(&populationInitial);
 
return 0;
}
les erreurs :
1>------ Début de la génération : Projet : test_GA, Configuration : Debug Win32 ------
1>Compilation en cours...
1>main.c
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(21) : error C2143: erreur de syntaxe : absence de ';' avant 'type'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(23) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(23) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(23) : error C2039: 'chemin' : n'est pas membre de 'Individu'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(7) : voir la déclaration de 'Individu'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(27) : error C2143: erreur de syntaxe : absence de ';' avant 'type'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(29) : error C2143: erreur de syntaxe : absence de ';' avant 'type'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(30) : error C2143: erreur de syntaxe : absence de ';' avant 'type'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(35) : error C2065: 'random_index' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(35) : error C2065: 'NN' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(38) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(38) : error C2065: 'random_index' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(38) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(41) : error C2065: 'tmp_ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(41) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(41) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(42) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(42) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(42) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(42) : error C2065: 'random_index' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(42) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(43) : error C2065: 'ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(43) : error C2065: 'random_index' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(43) : error C2109: un indice requiert un type tableau ou pointeur
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(43) : error C2065: 'tmp_ptr' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(47) : error C2065: 'NN' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(50) : error C2143: erreur de syntaxe : absence de ';' avant 'type'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(53) : error C2065: 'populationInitial' : identificateur non déclaré
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(53) : warning C4133: 'fonction' : types incompatibles - de 'int *' à 'Individu *'
1>c:\documents and settings\my documents\visual studio 2008\projects\test_ga\test_ga\main.c(55) : warning C4098: 'initialiserIndividu' : retour d'une valeur par la fonction 'void'
1>Le journal de génération a été enregistré à l'emplacement "file://c:\Documents and Settings\\My Documents\Visual Studio 2008\Projects\test_GA\test_GA\Debug\BuildLog.htm"
1>test_GA - 27 erreur(s), 2 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========