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 | 23 | void remplissage(noeud ** parbre, char ch[128]){ |
24 | 24 | int i,n=strlen(ch); |
25 | 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 | 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 | 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 | 40 | char ch[128]; |
41 | 41 | noeud ** tmp_parbre=parbre; |
42 | 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 | 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 | 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 | 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 | 83 | return a; |
84 | 84 | } |
85 | 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 | 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 | 107 | void desallouer_dictionnaire(noeud*arbre[26]){ |
108 | 108 | for(int i=0;i<26;i++) |
109 | 109 | desallouer_arbre(arbre[i]); |
110 | 110 | } |
111 | - | |
111 | + | |
112 | 112 | |
113 | 113 | |
114 | 114 | |
115 | 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