diff --git a/Makefile b/Makefile new file mode 100755 index 0000000..804a5fa --- /dev/null +++ b/Makefile @@ -0,0 +1,14 @@ + +all: executable + +executable: projet.o + gcc -o executable projet.o + +projet.o: projet.c + gcc -c projet.c + +clean: + rm -rf *.o + +mrproper: clean + rm -rf $(EXEC) diff --git a/Makefile~ b/Makefile~ new file mode 100755 index 0000000..a5cfe54 --- /dev/null +++ b/Makefile~ @@ -0,0 +1,21 @@ +CC=gcc +CFLAGS=-W -Wall -ansi -pedantic +LDFLAGS= +EXEC=projet + +all: projet + +projet: fonctions.o main.o + $(CC) -o projet fonctions.o projet.o $(LDFLAGS) + +fonctions.o: fonctions.c + $(CC) -o fonctions.o -c fonctions.c $(CFLAGS) + +main.o: main.c fonctions.h + $(CC) -o main.o -c main.c $(CFLAGS) + +clean: + rm -rf *.o + +mrproper: clean + rm -rf $(EXEC) \ No newline at end of file diff --git a/a.out b/a.out new file mode 100755 index 0000000..25ba3fb Binary files /dev/null and b/a.out differ diff --git a/executable b/executable new file mode 100755 index 0000000..b4783e1 Binary files /dev/null and b/executable differ diff --git a/projet.c b/projet.c index 64bda87..b3ac714 100755 --- a/projet.c +++ b/projet.c @@ -3,35 +3,39 @@ #include #include #include + typedef struct noeud { int valeur; struct noeud *lettre[28]; } noeud ; + typedef struct{ noeud *dictionnaire[26]; } dico; + void creer_et_initialiser_le_noeud(noeud ** parbre, int v){ -*parbre=(noeud*)malloc(sizeof(noeud)); -(*parbre)->valeur=v; -int i; -for(i=0;i<28;i++) + *parbre=malloc(sizeof(noeud)); + (*parbre)->valeur=v; + for(int i=0;i<28;i++) (*parbre)->lettre[i]=NULL; } + void remplissage(noeud ** parbre, char ch[128]){ int i,n=strlen(ch); - if(& (*parbre)->valeur==NULL) + if(*parbre==NULL) creer_et_initialiser_le_noeud(parbre,tolower(ch[0])); for(i=1;ilettre[26]; else parbre=&(*parbre)->lettre[tolower(ch[i])-'a']; - if(&(*parbre)->valeur==NULL) + if(*parbre == NULL) creer_et_initialiser_le_noeud(parbre,tolower(ch[i])); } creer_et_initialiser_le_noeud(&(*parbre)->lettre[27],0); } + void lecture(noeud ** parbre, FILE *fichier,int v){ char ch[128]; noeud ** tmp_parbre=parbre; @@ -39,6 +43,7 @@ void lecture(noeud ** parbre, FILE *fichier,int v){ if(tolower(ch[0])==v) remplissage(tmp_parbre,ch); } + void insertion_dictionnaire(noeud * Arbre[26]){ int i; for(i=0;i<26;i++){ @@ -47,11 +52,13 @@ void insertion_dictionnaire(noeud * Arbre[26]){ fclose(dico); } } + void initialiser_dictionnaire(noeud * Arbre[26]){ int i; for(i=0;i<26;i++) Arbre[i]=NULL; } + bool existe(noeud ** parbre,char ch[128]){ int n=strlen(ch); int i,cpt=0; @@ -74,6 +81,7 @@ bool existe(noeud ** parbre,char ch[128]){ } else return false; } + void corriger_texte(noeud*arbre[26]){ char ch[128]; FILE *texte=fopen("texte.txt","r"); @@ -83,6 +91,7 @@ void corriger_texte(noeud*arbre[26]){ } fclose(texte); } + int main (){ dico d; initialiser_dictionnaire(d.dictionnaire); @@ -93,6 +102,7 @@ int main (){ printf("\nvoici les fautes dans le texte: \n \n"); corriger_texte(d.dictionnaire); printf("\n"); + return 0; } diff --git a/projet.o b/projet.o new file mode 100644 index 0000000..8be0b87 Binary files /dev/null and b/projet.o differ diff --git a/rapport.pdf b/rapport.pdf new file mode 100755 index 0000000..433c0f5 Binary files /dev/null and b/rapport.pdf differ -- libgit2 0.21.2