PROGRAM FAKULTAET(INPUT,OUTPUT); (*REKURSIVE BERECHNUNG DER FAKULTAET*) VAR F:INTEGER; FUNCTION FAK(N:INTEGER):REAL; BEGIN IF N=0 THEN FAK:=1.0 ELSE FAK:=N*FAK(N-1) END; BEGIN WRITELN("BERECHNUNG DER FAKULTAET:"); WRITELN("(BEENDEN MIT 0)"); REPEAT READLN(F); WRITELN(F:3,"! =",FAK(F)); UNTIL F=0; END.