Université Sidi Mohamed Ben Abdellah SMI5
Faculté polydisciplinaire de Taza
TP1 : Compilation
Implémentation des AFD
1. L’objectif est d’implémenter en langage C (ou java) l’automate reconnaissant le
langage a* b b* sur l’alphabet {a, b}.
Ecrire un programme qui permet de lire un mot sur l’alphabet {a, b} et de retourner
« reconnu » si le mot est reconnu par cet automate et «non reconnu» si non. Pour
faciliter la tâche vous pouvez utiliser l’algorithme suivant :
a) Remplir un tableau EF [] par les états finaux.
b) Remplir un tableau TR [] [] par les transitions de l’automate (par défaut
toutes les transitions sont interdites TR[e][s]=-1, avec e est un état et s est
un symbole de l’alphabet de l’automate).
c) Lire le mot m dans un tableau TM[].
d) Tester la reconnaissance du mot m par cet automate en utilisant la fonction
AFD suivante :
2. Ecrire un programme en langage C (ou en java) qui permet de reconnu les
identificateurs