Задача №252. Степень для отрицательного показателя Напишите рекурсивную функцию,...

0 голосов
163 просмотров

Задача №252. Степень для отрицательного показателя
Напишите рекурсивную функцию, возводящую число a в степень n. Гарантируется, что все числа "помещаются" в стандартные вещественные (a и ответ) и целые [[no]] типы.
Входные данные
Вводится 2 числа - a и n (число n может быть отрицательным).
Выходные данные
Необходимо вывести значение a в степени n

Примеры
2 -1
0.5
ПАСКАЛЬ
ПАСКЛАЬ


Информатика (5.7k баллов) | 163 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Function st(a:real;n:integer):real;
begin
if n=0
 then st:=1
 else if n<0 then st:=1/st(a,abs(n))<br>             else st:=a*st(a,n-1);
end;
var x:real; k:integer;
begin
write('x = ');
readln(x);
write('k = ');
readln(k);
writeln(x,' ^ ',k,' = ',st(x,k));
end.

Пример:
x = 2
k = -3
2 ^ -3 = 0.125

(194k баллов)