Commit 18d7b5f9a003e387fc2069f7230c4702d93145f4
1 parent
2eee91cd
dernier commit
Showing
3 changed files
with
65 additions
and
65 deletions
Show diff stats
executable
No preview for this file type
projet.c
@@ -23,14 +23,14 @@ void creer_et_initialiser_le_noeud(noeud ** parbre, int v){ | @@ -23,14 +23,14 @@ void creer_et_initialiser_le_noeud(noeud ** parbre, int v){ | ||
23 | void remplissage(noeud ** parbre, char ch[128]){ | 23 | void remplissage(noeud ** parbre, char ch[128]){ |
24 | int i,n=strlen(ch); | 24 | int i,n=strlen(ch); |
25 | if(*parbre==NULL) | 25 | if(*parbre==NULL) |
26 | - creer_et_initialiser_le_noeud(parbre,tolower(ch[0])); | 26 | + creer_et_initialiser_le_noeud(parbre,tolower(ch[0])); |
27 | for(i=1;i<n;i++){ | 27 | for(i=1;i<n;i++){ |
28 | - if(ch[i]==39) | ||
29 | - parbre=&(*parbre)->lettre[26]; | ||
30 | - else | ||
31 | - parbre=&(*parbre)->lettre[tolower(ch[i])-'a']; | ||
32 | - if(*parbre == NULL) | ||
33 | - creer_et_initialiser_le_noeud(parbre,tolower(ch[i])); | 28 | + if(ch[i]==39) |
29 | + parbre=&(*parbre)->lettre[26]; | ||
30 | + else | ||
31 | + parbre=&(*parbre)->lettre[tolower(ch[i])-'a']; | ||
32 | + if(*parbre == NULL) | ||
33 | + creer_et_initialiser_le_noeud(parbre,tolower(ch[i])); | ||
34 | } | 34 | } |
35 | creer_et_initialiser_le_noeud(&(*parbre)->lettre[27],0); | 35 | creer_et_initialiser_le_noeud(&(*parbre)->lettre[27],0); |
36 | } | 36 | } |
@@ -40,90 +40,90 @@ void lecture(noeud ** parbre, FILE *fichier,int v){ | @@ -40,90 +40,90 @@ void lecture(noeud ** parbre, FILE *fichier,int v){ | ||
40 | char ch[128]; | 40 | char ch[128]; |
41 | noeud ** tmp_parbre=parbre; | 41 | noeud ** tmp_parbre=parbre; |
42 | while(fscanf(fichier,"%s",ch)==1) | 42 | while(fscanf(fichier,"%s",ch)==1) |
43 | - if(tolower(ch[0])==v) | ||
44 | - remplissage(tmp_parbre,ch); | 43 | + if(tolower(ch[0])==v) |
44 | + remplissage(tmp_parbre,ch); | ||
45 | } | 45 | } |
46 | 46 | ||
47 | void insertion_dictionnaire(noeud * Arbre[26]){ | 47 | void insertion_dictionnaire(noeud * Arbre[26]){ |
48 | - int i; | ||
49 | - for(i=0;i<26;i++){ | ||
50 | - FILE *dico=fopen("dico.txt","r"); | ||
51 | - lecture(&Arbre[i],dico,i+'a'); | ||
52 | - fclose(dico); | ||
53 | - } | 48 | + int i; |
49 | + for(i=0;i<26;i++){ | ||
50 | + FILE *dico=fopen("dico.txt","r"); | ||
51 | + lecture(&Arbre[i],dico,i+'a'); | ||
52 | + fclose(dico); | ||
53 | + } | ||
54 | } | 54 | } |
55 | 55 | ||
56 | void initialiser_dictionnaire(noeud * Arbre[26]){ | 56 | void initialiser_dictionnaire(noeud * Arbre[26]){ |
57 | - int i; | ||
58 | - for(i=0;i<26;i++) | ||
59 | - Arbre[i]=NULL; | 57 | + int i; |
58 | + for(i=0;i<26;i++) | ||
59 | + Arbre[i]=NULL; | ||
60 | } | 60 | } |
61 | 61 | ||
62 | int existe(noeud ** parbre,char ch[128]){ | 62 | int existe(noeud ** parbre,char ch[128]){ |
63 | - int n=strlen(ch); | ||
64 | - int a,cpt=0; | ||
65 | - noeud ** tmp_parbre=parbre; | ||
66 | - for(int i=0;i<n-1;i++){ | ||
67 | - if((*tmp_parbre)!=NULL){ | ||
68 | - if(tolower(ch[i])==(*tmp_parbre)->valeur){ | ||
69 | - cpt++; | ||
70 | - if (ch[i+1]==39) | ||
71 | - tmp_parbre=&(*tmp_parbre)->lettre[26]; | ||
72 | - else | ||
73 | - tmp_parbre=&(*tmp_parbre)->lettre[tolower(ch[i+1])-'a']; | ||
74 | - } | ||
75 | - } | ||
76 | - } | ||
77 | - if ((*tmp_parbre)!=NULL){ | ||
78 | - if (tolower(ch[cpt])==(*tmp_parbre)->valeur) | ||
79 | - if ((*tmp_parbre)->lettre[27]!=NULL) | ||
80 | - a=1; | ||
81 | - } | ||
82 | - else a=0; | 63 | + int n=strlen(ch); |
64 | + int a,cpt=0; | ||
65 | + noeud ** tmp_parbre=parbre; | ||
66 | + for(int i=0;i<n-1;i++){ | ||
67 | + if((*tmp_parbre)!=NULL){ | ||
68 | + if(tolower(ch[i])==(*tmp_parbre)->valeur){ | ||
69 | + cpt++; | ||
70 | + if (ch[i+1]==39) | ||
71 | + tmp_parbre=&(*tmp_parbre)->lettre[26]; | ||
72 | + else | ||
73 | + tmp_parbre=&(*tmp_parbre)->lettre[tolower(ch[i+1])-'a']; | ||
74 | + } | ||
75 | + } | ||
76 | + } | ||
77 | + if ((*tmp_parbre)!=NULL){ | ||
78 | + if (tolower(ch[cpt])==(*tmp_parbre)->valeur) | ||
79 | + if ((*tmp_parbre)->lettre[27]!=NULL) | ||
80 | + a=1; | ||
81 | + } | ||
82 | + else a=0; | ||
83 | return a; | 83 | return a; |
84 | } | 84 | } |
85 | void corriger_texte(noeud*arbre[26]){ | 85 | void corriger_texte(noeud*arbre[26]){ |
86 | - char ch[128]; | ||
87 | - FILE *texte=fopen("texte.txt","r"); | ||
88 | - while(fscanf(texte,"%s",ch)==1){ | ||
89 | - if(!existe(&arbre[tolower(ch[0])-'a'],ch)) | ||
90 | - printf("%s\n",ch); | 86 | + char ch[128]; |
87 | + FILE *texte=fopen("texte.txt","r"); | ||
88 | + while(fscanf(texte,"%s",ch)==1){ | ||
89 | + if(!existe(&arbre[tolower(ch[0])-'a'],ch)) | ||
90 | + printf("%s\n",ch); | ||
91 | } | 91 | } |
92 | - fclose(texte); | 92 | + fclose(texte); |
93 | } | 93 | } |
94 | 94 | ||
95 | 95 | ||
96 | void desallouer_arbre(noeud *arbre){ | 96 | void desallouer_arbre(noeud *arbre){ |
97 | 97 | ||
98 | - if(arbre != NULL) | ||
99 | - for(int i=0;i<28;i++){ | ||
100 | - if(arbre->lettre[i] != NULL) | ||
101 | - desallouer_arbre(arbre->lettre[i]); | ||
102 | - } | ||
103 | - else | ||
104 | - free(arbre); | ||
105 | - | 98 | + if(arbre != NULL) |
99 | + for(int i=0;i<28;i++){ | ||
100 | + if(arbre->lettre[i] != NULL) | ||
101 | + desallouer_arbre(arbre->lettre[i]); | ||
102 | + } | ||
103 | + else | ||
104 | + free(arbre); | ||
105 | + | ||
106 | } | 106 | } |
107 | void desallouer_dictionnaire(noeud*arbre[26]){ | 107 | void desallouer_dictionnaire(noeud*arbre[26]){ |
108 | for(int i=0;i<26;i++) | 108 | for(int i=0;i<26;i++) |
109 | desallouer_arbre(arbre[i]); | 109 | desallouer_arbre(arbre[i]); |
110 | } | 110 | } |
111 | - | 111 | + |
112 | 112 | ||
113 | 113 | ||
114 | 114 | ||
115 | int main (){ | 115 | int main (){ |
116 | - dico d; | ||
117 | - initialiser_dictionnaire(d.dictionnaire); | ||
118 | - insertion_dictionnaire(d.dictionnaire); | ||
119 | - printf("-----------------------------------------------------------\n"); | ||
120 | - printf("Bienvenue dans le correcteur orthographique de HAROUN V1.0\n"); | ||
121 | - printf("-----------------------------------------------------------\n"); | ||
122 | - printf("\nvoici les fautes dans le texte: \n \n"); | ||
123 | - corriger_texte(d.dictionnaire); | ||
124 | - desallouer_dictionnaire(d.dictionnaire); | ||
125 | - printf("\n"); | ||
126 | - | ||
127 | - return 0; | 116 | + dico d; |
117 | + initialiser_dictionnaire(d.dictionnaire); | ||
118 | + insertion_dictionnaire(d.dictionnaire); | ||
119 | + printf("-----------------------------------------------------------\n"); | ||
120 | + printf("Bienvenue dans le correcteur orthographique de HAROUN V1.0\n"); | ||
121 | + printf("-----------------------------------------------------------\n"); | ||
122 | + printf("\nvoici les fautes dans le texte: \n \n"); | ||
123 | + corriger_texte(d.dictionnaire); | ||
124 | + desallouer_dictionnaire(d.dictionnaire); | ||
125 | + printf("\n"); | ||
126 | + | ||
127 | + return 0; | ||
128 | } | 128 | } |
129 | 129 |
projet.o
No preview for this file type