diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..22434fd Binary files /dev/null and b/.DS_Store differ diff --git a/TP1/.DS_Store b/TP1/.DS_Store new file mode 100644 index 0000000..6e692bf Binary files /dev/null and b/TP1/.DS_Store differ diff --git a/TP1/parseur/.vscode/settings.json b/TP1/parseur/.vscode/settings.json new file mode 100644 index 0000000..0f06797 --- /dev/null +++ b/TP1/parseur/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "files.associations": { + "stdio.h": "c" + } +} \ No newline at end of file diff --git a/TP1/parseur/main.c b/TP1/parseur/main.c new file mode 100644 index 0000000..8de73ab --- /dev/null +++ b/TP1/parseur/main.c @@ -0,0 +1,61 @@ +#include +#include "main.h" + +enum Etats curEtat; +FILE *fp; + +void AnalyseFicher(const char *nomFichier) { + fp = fopen(*nomFichier, "rt"); + char c; + while ((c=fgetc(fp)) != EOF) + { + enum EEtat ret = AnalyseProchaineBalise(c); + if (ret == EEtatErreur) { + printf("Error"); + break; + } + if (ret = EEtatTermine){ + + } + } +} + +enum EEtat AnalyseProchaineBalise(char c) { + switch (curEtat) + { + case SEtatDebut: + if (c == '<') { + curEtat = SEtat1; + } + break; + case SEtat1: + if (c == '/') { + curEtat = SEtat2; + } else { + curEtat = SEtat3; + } + break; + case SEtat2: + if (c == '>') { + curEtat = SEtatFin; + } + break; + case SEtat3: + if (c == '>') { + curEtat = SEtatFin; + } + break; + case SEtatFin: + break; + default: + break; + } + +} + +int main() +{ + curEtat = SEtatDebut; + + return 0; +} \ No newline at end of file diff --git a/TP1/parseur/main.h b/TP1/parseur/main.h new file mode 100644 index 0000000..db57cfc --- /dev/null +++ b/TP1/parseur/main.h @@ -0,0 +1,18 @@ +enum Etats +{ + SEtatDebut, + SEtat1, + SEtat2, + SEtat3, + SEtatFin +}; + +enum EEtat +{ + EEtatErreur, + EEtatTermine, + EEtatContinue +}; + +void PileInit(); +void PilePush(); diff --git a/TP1/read_file/a.out b/TP1/read_file/a.out new file mode 100755 index 0000000..64ed1b3 Binary files /dev/null and b/TP1/read_file/a.out differ diff --git a/TP1/read_file/main b/TP1/read_file/main new file mode 100755 index 0000000..64ed1b3 Binary files /dev/null and b/TP1/read_file/main differ