Procédure récursive

je n'arrive pas a transformer cette procédure en une procédure récursive , pouvez vous m'aidez s'il vous plait. merci d'avance
procedure affiche;
var
a,b:integer;
begin
for a:=0 to 3 do
for b:=0 to 9 do
writeln(a*10+b);
end;

1 réponse

  1. Modérateur
    Et qu'est-ce que tu as fait pour l'instant ?
    0
    1. j'ai pas pu , je ne comprends pas comment faire le passage récursif
      0
    2. Modérateur
      Il faut essayer... ça ne va pas se faire tout seul.
      Déjà il faut enlever tes deux boucles, sinon c'est itératif.
      Ensuite comme il te faudra quand même des valeurs de a et b, tu devras les passer en paramètres.

      procedure afficheRecursif(a,b:integer)
      begin
          // ...
          writeln(a*10+b);
          // ...
      end;
      0
    3. if (a>=0) and (a<=3)then
      if (b>=0) and(b<=9)then
      writeln(a*10+b);
      afficherecursif(a+1,b+1);

      c'est comme ça ?
      0
    4. Modérateur
      Ce sera quelque chose dans ce genre là, mais là tu incrémentes a et b en même temps, et ça ne correspond pas à l'imbrication des boucles que tu avais en itératif.
      0
    5. svp aidez moi encore une demi heure et je passe mon examen ça sera cette procédure
      0