var
a: integer;
begin
readln(a);
if(a mod 4 = 0) and (a mod 100 <> 0) or (a mod 400 = 0) then
writeln('Год високосный')
else
writeln('Год не високосный');
end.
Вариант без рекурсии - как просил позже
function factorization ( numeric: integer ): integer;
var d: integer;
begin
write(numeric, ' = 1');
d := 2;
while numeric > 1 do
begin
if numeric mod d = 0 then
begin
write (' * ', d);
numeric := numeric div d;
end
else inc(d);
end;
end;
var x: integer;
begin
write('Введите число: ');
readln(x);
factorization(x);
<span>end.</span>
ні........
тому що вони майже однакові, хоча це залежить від формата