| Program FakultetsProgram;
{$Q+,R+} {overflow check, range check}
uses crt;
Const Sidste = 12;
Type IndexType = 1 .. Sidste;
HeltalsTabel = array[IndexType] of Longint;
Var Fakultet: HeltalsTabel;
n: integer;
Procedure LavFakultetsTabel(indtil: IndexType; var FT: HeltalsTabel);
var i: Integer;
begin
FT[1] := 1;
for i := 2 to indtil do FT[i] := FT[i-1] * i
end;
begin
LavFakultetsTabel(Sidste, Fakultet);
repeat
write('Opslå fakultet af (0 afslutter): '); readln(n);
if n > 0 then writeln(Fakultet[n])
until n = 0
end.
|