0c252f1e
Raouak Haroun
commit du 2 avril
|
1
2
3
4
5
6
7
8
9
10
11
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
typedef struct noeud{
int valeur;
struct noeud *lettre[26];
} noeud ;
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
12
|
void creer_et_initialiser_le_noeud(noeud ** parbre, int v){
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
13
14
15
16
17
18
19
20
21
|
*parbre=malloc(sizeof(noeud));
(*parbre)->valeur=v;
int i;
for(i=0;i<26;i++)
(*parbre)->lettre[i]=NULL;
}
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
22
|
void remplissage(noeud ** parbre, char ch[128]){
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
23
|
int i;
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
24
|
int n=strlen(ch);
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
25
26
|
if(&(*parbre)->valeur==NULL)
creer_et_initialiser_le_noeud(parbre,ch[0]);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
27
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
28
29
30
31
|
for(i=1;i<n;i++){
parbre=&(*parbre)->lettre[ch[i]-'a'];
if(&(*parbre)->valeur==NULL)
creer_et_initialiser_le_noeud(parbre,ch[i]);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
32
|
}
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
33
34
|
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
35
36
|
}
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
37
38
|
void lecture(noeud ** parbre, FILE *fichier){
char ch[128];
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
39
|
int i;
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
40
41
42
43
44
|
noeud ** tmp_parbre=parbre;
while(fscanf(fichier,"%s",ch)==1)
remplissage(tmp_parbre,ch);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
45
|
}
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
46
47
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
48
49
50
51
|
int main (){
noeud *Arbre = NULL;
FILE *dico=fopen("dico.txt","r");
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
52
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
53
|
lecture(&Arbre,dico);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
54
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
55
|
fclose(dico);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
56
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
57
58
|
FILE *texte=fopen("texte.txt","r");
fclose(texte);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
59
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
printf("la lettre est :%c\n",Arbre->valeur);
printf("la lettre est :%c\n",Arbre->lettre[17]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->valeur); // afficher arbre
printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->lettre[17]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->lettre[17]->lettre[4]->valeur);
printf("\n");
printf("la lettre est :%c\n",Arbre->valeur);
printf("la lettre est :%c\n",Arbre->lettre[25]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->valeur); // afficher azerty
printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->lettre[19]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->lettre[19]->lettre[24]->valeur);
printf("\n");
printf("la lettre est :%c\n",Arbre->valeur);
printf("la lettre est :%c\n",Arbre->lettre[13]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->valeur); // afficher azerty
printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->lettre[0]->valeur);
printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->lettre[0]->lettre[18]->valeur);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
83
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
84
85
|
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
86
|
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
87
88
|
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
89
|
FILE *corrige = fopen("fautes.txt","w");
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
90
91
|
fclose(corrige);
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
92
|
return 0;
|
d01b83b4
Raouak Haroun
commit du 4 avril
|
93
94
|
|
0c252f1e
Raouak Haroun
commit du 2 avril
|
95
96
|
}
|