Aide sur mini analyseur lexicale

Résolu
Ret-ing Messages postés 2 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 31 décembre 2014 - Modifié par Whismeril le 7/01/2015 à 13:29
PythonGreg Messages postés 68 Date d'inscription jeudi 3 novembre 2011 Statut Membre Dernière intervention 6 février 2015 - 7 janv. 2015 à 12:53
Bonjour,
je suis entraine de faire une auto formation delphi7
j entraine de coder un mini analyseur lexicale .
le probleme qui se pose quand je fais l'analyse a partir de matrice de transition
pour voir l'entite est correcte ou non selon ma grammaire : quand j'ai utilsé while j'avais une boucle infini;j'ai utilisé if imbriqué j'avais pas resultat attendue
je suis bloqué
sur internet j trouve d'autre façon de le faire mais comme je suis debutante j'ai rien compris.
aider moi s'il vous plait.
merci d'avance.
voici le code:

procedure TForm1.Button1Click(Sender: TObject);
 begin
   Etat:='1';
    for l:=1 to length(Mot) do
    begin
     car:=Mot[l];
     if (car<>'#') then
     begin
         Etat:=tab[Etat,car];
       if Etat='/' then
          memo2.Lines.Add('entite incorrecte /');
      end
      else
       if ((Etat<>'5') and (Etat<>'2') and (Etat<>'7') and (Etat<>'8') and (Etat<>'10'))then

         memo2.Lines.Add('entite incorrecte')
         else
        memo2.Lines.Add('entite correcte');


EDIT: Ajout de la coloration syntaxique.

1 réponse

PythonGreg Messages postés 68 Date d'inscription jeudi 3 novembre 2011 Statut Membre Dernière intervention 6 février 2015
Modifié par PythonGreg le 7/01/2015 à 12:58
la Fonction te sera utile. :-) exemple : Pos('#',Mots[I])

for l:=1 to length(Mot) do 
Pourquoi 1 ? for l:=0

Je suppose que t'ai déclaration de variable son en global ?

Tab ? c'est quoi ?
0
Rejoignez-nous