Bonjour à tous,
j'espère que je ne me suis pas tromper de forum pour vous exposer mon problème.

j'aimerai faire une procedure qui a partir d'un agenda de personne, classe les gens selon leur prefixe téléphonique.
J'ai dont essayer de codé tout ça mais ça ne me les copie pas correctement et je cherche donc l'erreur.
Pouvez vous m'aider ?




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
typedef struct
{
        char nom[20];
        char prenom[20];
        char tel[10];
        int rang;
}Agenda;
 
typedef struct
{
        char nom[20];
        char prenom[20];
        char tel[10];
        int rang;
}PrefixeTel01;


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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
 //procedure classé par region
         void region(Agenda TabPers[Maxtaille],int Nbpers,PrefixeTel01 *Tab01,PrefixeTel02 *Tab02,PrefixeTel03 *Tab03,PrefixeTel04 *Tab04,int *Nb01,int *Nb02,int *Nb03,int *Nb04 )
{
 
         int i,j,k,l,m;
         bool Trouve01,Trouve02,Trouve03,Trouve04;
 
// initalisation des variables
j=0;
k=0;
l=0;
m=0;
Nb03=0;
Nb01=0;
Nb02=0;
Nb04=0;
 
 
for(i=0;i<Nbpers;i++) //Debut de la boucle qui parcours l'agenda
{
Trouve01=false;
Trouve03=false;
Trouve03=false;
Trouve04=false;
 
string compare=TabPers[i].tel; //compare reçois le numero de tel d'une personne de l'agenda
 
if (compare.substr(0, 1)=="01"); //Compare si les 2 premiers numero sont 01 
{
strcpy (Tab01[j].nom,TabPers[i].nom);
strcpy (Tab01[j].prenom,TabPers[i].prenom); //copie les info de la personne dans le tableau departemental 01
strcpy (Tab01[j].tel,TabPers[i].tel);
 
j++;
Trouve01=true;
}
 
if (compare.substr(0, 1)=="02");//Compare si les 2 premiers numero sont 02
{
strcpy (Tab02[k].nom,TabPers[i].nom);
strcpy (Tab02[k].prenom,TabPers[i].prenom); //copie les info de la personne dans le tableau departemental 02
strcpy (Tab02[k].tel,TabPers[i].tel);
 
k++;
Trouve02=true;
}
 
if (compare.substr(0, 1)=="03");//Compare si les 2 premiers numero sont 03
{
strcpy (Tab03[l].nom,TabPers[i].nom);
strcpy (Tab03[l].prenom,TabPers[i].prenom); //copie les info de la personne dans le tableau departemental 03
strcpy (Tab03[l].tel,TabPers[i].tel);
 
l++;
Trouve03=true;
}
 
if (compare.substr(0, 1)=="04");//Compare si les 2 premiers numero sont 04
{
strcpy (Tab04[m].nom,TabPers[i].nom);
strcpy (Tab04[m].prenom,TabPers[i].prenom); //copie les info de la personne dans le tableau departemental 04
strcpy (Tab04[m].tel,TabPers[i].tel);
 
m++;
Trouve04=true;
}
 
if (Trouve01=true)
{               //compte toutes les personnes qui sont ds le departement01
Nb01=Nb01+1;
}
 
if (Trouve02=true)
{               //compte toutes les personnes qui sont ds le departement02
Nb02=Nb02+1;
}
 
if (Trouve03=true)
{               //compte toutes les personnes qui sont ds le departement03
Nb03=Nb03+1;
}
 
if (Trouve04=true)
{              //compte toutes les personnes qui sont ds le departement04
Nb04=Nb04+1;
}
 
}
}