Blame view

main.c 2.47 KB
76053da1   Thorsieger   update des fichiers
1
  #include "tree.h"
03168857   mertz   create tree op
2
  
0c5c5f59   Thorsieger   lancer le program...
3
  int main(int argc, char* argv[])
03168857   mertz   create tree op
4
  {
284154ca   Thorsieger   gestion des accents
5
    setlocale(LC_ALL, "");
16e67e7e   Thorsieger   l'utilisateur peu...
6
7
    //Récupération du fichier contenant le dictionnaire
    char fichier[100];
0c5c5f59   Thorsieger   lancer le program...
8
9
    if(argc==3) strcpy(fichier,argv[1]);
  
16e67e7e   Thorsieger   l'utilisateur peu...
10
    FILE* fp = NULL;
0c5c5f59   Thorsieger   lancer le program...
11
    if(argc != 3)wprintf(L"Quel fichier voulez-vous utiliser comme dictionnaire ?\n");
16e67e7e   Thorsieger   l'utilisateur peu...
12
    do{
0c5c5f59   Thorsieger   lancer le program...
13
      if(argc != 3)wscanf(L"%s",fichier);
16e67e7e   Thorsieger   l'utilisateur peu...
14
15
16
      fp = fopen(fichier,"r");
      if(fp == NULL)
      {
0c5c5f59   Thorsieger   lancer le program...
17
18
19
20
21
         if(argc==3){
              wprintf(L"Le fichier n'est pas accessible !\n");
              return 1;
            }
            else wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n");
16e67e7e   Thorsieger   l'utilisateur peu...
22
23
24
      }
    }while(fp == NULL);
      
f5b960c9   Thorsieger   utilisateur peut ...
25
    //Choix des séparateurs
fdfde24a   Thorsieger   ajout de dictionn...
26
    wchar_t separateur[] = L",?;.:/!*+\\\"()=«»[]";
f5b960c9   Thorsieger   utilisateur peut ...
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  
    wprintf(L"La liste des séparateurs est : %ls  \nVoulez vous la changer ?[Y]\n",separateur);
    char changer_separateur = ' ';
    wscanf(L" %c",&changer_separateur);
    if(changer_separateur == 'Y' || changer_separateur == 'y')
    {
      do{
        wprintf(L"Entrez la nouvelle liste des séparateur :\n");
        wscanf(L"%ls",separateur);
        wprintf(L"La liste des séparateurs :  %ls vous convient ?[Y]\n",separateur);
        wscanf(L" %c",&changer_separateur);
      }while(changer_separateur!='Y' && changer_separateur!='y');
    }
  
16e67e7e   Thorsieger   l'utilisateur peu...
41
42
    //Chargement du dictionnaire
    dico Dico;
0f6db57b   Thorsieger   gestion des accen...
43
    init_dico(&Dico);
f5b960c9   Thorsieger   utilisateur peut ...
44
    load_dico(fp,&Dico,separateur);
16e67e7e   Thorsieger   l'utilisateur peu...
45
    fclose(fp);
f5b960c9   Thorsieger   utilisateur peut ...
46
    wprintf(L"Chargement du dictionnaire effectué!\n\n");
16e67e7e   Thorsieger   l'utilisateur peu...
47
48
  
    //Récupération du fichier contenant les mots à tester
0c5c5f59   Thorsieger   lancer le program...
49
    char recommencer = ' ';
16e67e7e   Thorsieger   l'utilisateur peu...
50
51
    do{
    FILE* fp = NULL;
0c5c5f59   Thorsieger   lancer le program...
52
53
    if(argc != 3)wprintf(L"Quel fichier voulez-vous tester ?\n");
    else strcpy(fichier,argv[2]);
16e67e7e   Thorsieger   l'utilisateur peu...
54
    do{
0c5c5f59   Thorsieger   lancer le program...
55
      if(argc != 3)wscanf(L"%s",fichier);
16e67e7e   Thorsieger   l'utilisateur peu...
56
57
58
      fp = fopen(fichier,"r");
      if(fp == NULL)
      {
0c5c5f59   Thorsieger   lancer le program...
59
60
61
62
63
            if(argc==3){
              wprintf(L"Le fichier n'est pas accessible !\n");
              return 1;
            }
            else wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n");
16e67e7e   Thorsieger   l'utilisateur peu...
64
65
66
67
      }
    }while(fp == NULL);
  
    //Vérification des mots du fichier
f5b960c9   Thorsieger   utilisateur peut ...
68
69
    int result = find_erreur(Dico,fp,separateur);
    wprintf(L"Le fichier testé contient %d mots qui ne sont pas présent dans le dictionnaire.\n",result);
16e67e7e   Thorsieger   l'utilisateur peu...
70
    fclose(fp);
264d2b59   Thorsieger   debut verif ortho...
71
  
df266b37   Thorsieger   ajout de commenta...
72
    //Demande si volonté de recommencer
0c5c5f59   Thorsieger   lancer le program...
73
74
75
    if(argc != 3)wprintf(L"Voulez vous tester un autre fichier ?[Y]\n");
    if(argc != 3)wscanf(L" %c",&recommencer);
    else recommencer = ' ';
16e67e7e   Thorsieger   l'utilisateur peu...
76
    }while(recommencer == 'Y' || recommencer == 'y');
264d2b59   Thorsieger   debut verif ortho...
77
  
16e67e7e   Thorsieger   l'utilisateur peu...
78
    free_dico(Dico);//libérer la mémoire du dictionnaire
131759ee   Thorsieger   fin free arbre
79
  
f5b960c9   Thorsieger   utilisateur peut ...
80
    wprintf(L"Fin du programme\n");
131759ee   Thorsieger   fin free arbre
81
  
03168857   mertz   create tree op
82
83
    return 0;
  }