problème d'execution d'un programme

problème d'execution d'un programme - Delphi/Pascal - Programmation

Marsh Posté le 19-04-2008 à 22:31:12    

Bonjour. J'ai un un petit dont je ne trouve pas la solution. (j'ai meme aucune idée de piste pour la trouver...)
 
 

Code :
  1. begin
  2. procedure1;
  3. procedure2;
  4. procedure3;
  5. procedure4;
  6. end.


 
 
Lorsque je lance mon programme, les procédures 1 et 2 s'executent sans problème, mais le programme refuse de passer à la suite (ici à la procédure 3).
D'où est-ce que cela peut venir ? (sachant que dans la procédure 2, il y a quelques "break" ; mais je ne pense pas que cela intervienne en dehors de la procédure).
Merci de votre aide.
Voici une copie de mon code :
 
 

Code :
  1. uses crt;  {clrscr; }
  2. type NomDeStructure = record
  3. nom : string ;
  4. point : integer;
  5. points_tie_break : integer ;
  6. sett :array [0..5] of integer ;   {equipe[i].set[j]=nbre de jeu de l'equipe i dans le j-iŠme set}
  7. end;
  8. var Joueur : array[0..4] of NomDeStructure;
  9. var equipe : array[0..2] of NomDeStructure;
  10. var Nbre_set : integer;
  11. var Nbre_joueur : integer;
  12. var h : integer;
  13. {**************************************************************************************}
  14. Procedure Nom_equipe;
  15. var i :integer;
  16. begin
  17.           if Nbre_joueur = 4 then
  18.                          Equipe[1].nom:= 'l''‚quipe '+ Joueur[1].nom + '/' + joueur[2].nom;
  19.                          Equipe[2].nom:= 'l''‚quipe '+ Joueur[3].nom + '/' + joueur[4].nom;
  20.           If Nbre_joueur = 2 then
  21.                          for i:=1 to 2 do begin
  22.                          Equipe[i].nom:=joueur[i].nom
  23.                          end;
  24. writeln('fin Nom_equipe');
  25. end;
  26. {**************************************************************************************}
  27. Procedure Initialisation_score; {0 jeux marqu‚s}
  28. var i,j : integer;
  29. begin
  30.     for j := 1 to Nbre_set do begin
  31.         for i := 1 to 2 do begin
  32.             equipe[i].sett[j]:=0;
  33.         end;
  34.     end;
  35. writeln('fin initialisation_score');
  36. end;
  37. {**************************************************************************************}
  38. Procedure Saisie_score; {saisie des jeux gagn‚s dans chaques sets}
  39. var i,j,l : integer;
  40. begin
  41. h:=Nbre_set;
  42. for j := 1 to Nbre_set do begin
  43.     for i := 1 to 2 do begin
  44.         equipe[2].sett[j]:=10; {empeche de quitter la boucle ; voir en dessous}
  45.         If h<Nbre_set then
  46.            begin
  47.            break;
  48.            end
  49.            Else
  50.            begin
  51.            repeat
  52.            writeln('combien de jeux ', Equipe[i].nom, ' a gagn‚ dans le set',j,'?');
  53.            writeln('1,2,3,4,5,6,7, 9 si le set numero ',j,' n''a pas encore commenc‚');
  54.            readln(equipe[i].sett[j])
  55.            until equipe[i].sett[j] IN [1,2,3,4,5,6,7,9];
  56.            if equipe[1].sett[j] = 9 then begin
  57.               equipe[2].sett[j]:= 9;
  58.               h:=j-1;
  59.            end;
  60.            if (equipe[1].sett[j]<6) and (equipe[2].sett[j]<6) then begin
  61.               h:=j;
  62.            end;
  63.            if (equipe[1].sett[j] = equipe[2].sett[j]) and  (equipe[1].sett[j]= 6) then begin
  64.               equipe[1].sett[j]:=8;    {8 egal tie break}
  65.               equipe[2].sett[j]:=8;
  66.               h:=j;
  67.            end;
  68.         end;
  69.     end;
  70. end;
  71. writeln('fin saisie_score');
  72. end;
  73. {**************************************************************************************}
  74. Procedure Synthese_score; {affiche le score}
  75. var i,j :integer;
  76. begin
  77. writeln('bonjour la synthese');
  78.     for j := 1 to Nbre_set do begin
  79.         for i := 1 to 2 do begin
  80.             writeln('set ', 'j','   ','equipe[i].sett[j]', ' jeux');
  81.         end;
  82.     end;
  83. writeln('fin synthese_score');
  84. end;
  85. {**************************************************************************************}
  86. BEGIN
  87. clrscr;
  88. Nbre_set :=5;
  89. Nbre_joueur :=4;
  90. Joueur[1].nom := 'olivier';
  91. Joueur[2].nom := 'laura';
  92. Joueur[3].nom := 'ANTOINE';
  93. Joueur[4].nom := 'jfb';
  94. writeln('bienvenue');
  95. Initialisation_score;
  96. Nom_equipe;
  97. Saisie_score;
  98. Synthese_score;
  99. END.

Reply

Marsh Posté le 19-04-2008 à 22:31:12   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed