Le but de ce projet scolaire a été de créer un programme en Ocaml imitant la Machine De Turing. Ce programme peut :
- Write
- Permet d'écrire un caractère sur le ruban
- Left
- Décale la tête de la machine vers la gauche
- Right
- Décale la tête de la machine vers la droite
- Delete
- Supprime un caractère de tous le ruban
- Invert
- Inverse le ruban et positionne la tête au bon endroit.
- Caesar
- Applique l'encodage de caesar pour les caractères ascii uniquement.
Avec les instructions ci-dessus ce programme est également capable d'encoder des mots afin que ceux-ci prennent le moins d'instruction possible.
Pour utiliser ce programme, il est nécessaire que le language Ocaml soit installé sur votre machine. Voir : Installer Ocaml
Afin d'utiliser ce progamme, il est nécessaire de le compiler, puis de l'éxécuter avec les bon paramètres.
- Compiler le programme
ocamlopt -o exe projet.ml
- Executer le programme
L'éxécutable prend en paramètre 1 ou 2 pour décoder un texte. Le paramètre 3 sert à encoder.
./exe <1|2|3> file
Décoder un fichier :
./exe 1 "invert.prog"
# return -> 1abd
Encoder un fichier (les fichiers t[1;5].prog sont les différents fichiers de test):
./exe 3 "t3.prog"
# F(2,[W(c);R;W(o);R;W(u);R;]);W( );R;W(e);R;W(t);R;W( );R;W(h);R;W(e);R;F(21,[W(l);R;]);W(o);R