var a, b, с: integer;
begin
write('Введите два числа: ');
readln(a, b);
if a < b then с := a + 1 else с := b + 1;
repeat с := с - 1
until (a mod с = 0) and (b mod с = 0);
write('NOD = ', с)
end.
//2. Алгоритм с вычитанием (цикл while)
var a, b: integer;
begin
write('a = ');
readln(a);
write('b = ');
readln(b);
while a <> b do
if a > b then
a := a - b
else
b := b - a;
writeln('NOD = ', a);
end.
написано на PascalABC.NET но должно работать во всех Паскалях.
Скриншот результата в приложении
}
PROGRAM power_recursive;
var
n,p:word;
function power(num:word; pow:byte):word;
begin
if (pow<2) then
power:=num
else
power:=num*power(num, pow-1);
end;
BEGIN
write('Введите основание степени : '); readln(n);
write('Введите показатель степени >0 : '); readln(p);
writeln( power(n,p) )
END.