Program MaxComDivisore2; (*con Function ricorsiva*) type naturale=0..MaxLongInt; var a,b:naturale; Function Mcd(a,b:naturale):naturale;(*funz. ricorsviva*) begin if b=0 then MCD:=a else MCD:=MCD(b,a mod b) end; (*chiama se stessa*) BEGIN writeln('Massimo comun divisore di a e b'); repeat write('a (0 per fine) =');readln(a); if a<=0 then Halt; write('b (0 per fine) =');readln(b); if b<=0 then Halt; writeln(' M.C.D.=',Mcd(a,b)) until false END.