Problème de boucle dans un prog en pascal

Bonjour,

Voilà mon problème, je débute tout juste en programmation et j'ai un problème avec un petit programme que j'ai réalisé et que voici en résumé :

program qui_es_tu ;
uses crt ;
var prenom : string ;
var reponse : char ;
begin
repeat
clrscr ;
write('entrez votre prenom : ') ;
readln(prenom) ;
if prenom = 'gustave' then
begin
write('vous vous appelez justin tartenpion, vous avez 52 ans et bla bla bla ....') ;
readkey ;
end
else
if prenom = 'jeannette' then ;
{et on recommence exactement la meme sequence plusieurs fois jusqu' à}
...
else
write('vous etes inconnu de ce programme.') ;
readln ;
clrscr ;
write('continuez [o,n] ? : ') ;
read(reponse) ;
if reponse = 'o' then
continue
else
until reponse = 'n' ;

end.

Voilà... surement une horreur pour un specialiste mais j'apprends tout seul avec un tuto sur le net et c' est tout nouveau pour moi alors j'essaiede trouver les solutions que je peux memes si elles sont loin d'etre elegantes :) .
Bref voilà mon problème : tout se passe bien jusqu' à ce que je choisisse 'o' à la question continuez où là ca recommence bien mais à la suite de la phrase 'entrez votre prenom' j ai affiché 'vous etes inconnu de ce programme' alors que je voudrais qu' elle ne s affiche, bien entendu, que quand un prenom non repertorié est saisi.
j espere avoir été clair et merci par avance de votre aide ou simplement de vos remarque su ce petit programme qui pourrait m'aider à progresser.
--
Parageons ce qu'il nous reste de connaissances avant que le monde ne plonge dans un bouillon d'inculture.
Configuration: Windows XP
Firefox 2.0.0.11

5 réponses

  1. Hello

    Supprime

    if reponse = 'o' then
    continue
    else
    0
    1. Bonsoir kmanber,
      Effectivement c'était inutile et j' ai supprimé ce que tu m' a dis mais ca ne résoud pas le problème...
      merci quand mçeme de ta réponse.
      0
      1. Si j'ai bien compris: il y a une chaine de caractères qui s'affiche en plus, donc je pense que le problème est que vous avez ajouter un ; quelque part, il faut restructurer votre code pour qu'il soit plus lisible:

        program qui_es_tu ;
         
        uses crt ;
         
        var 
                prenom : string ; 
                reponse : char ; 
        begin 
               repeat 
                          clrscr ; 
                          write('entrez votre prenom : ') ; 
                          readln(prenom) ; 
                          if prenom = 'gustave' then 
                               begin 
                                      write('vous vous appelez justin tartenpion, vous avez 52 ans et bla bla bla ....') ;  
                                      readkey ; 
                               end 
                          else 
                                if prenom = 'jeannette' then 
                                                    
        


        L'erreur doit être microscopique!
        0
        1. Merci beaucoup, je vais essayer de mieux structurer et je post si je trouve l'erreur, merci encore à tous pour votre aide !!!
          0
      2. ecrire un prog pascal qui permet d'afficher le nombre d'occurence des lettres de A a Z dans une chaine de caractere g besoin d'un solution c urgent
        0
        1. Hi;
          desoler pour la mal utulisation de la lange francai;
          voutre probleme est que vous chercher des noms conus par vous programme et le message 'vous....inconus....''
          voutre solution est de utiluser la boucle case of
          0