Напишите рекурсивную функцию, возводящую число a в степень n. Гарантируется, что все...

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

Напишите рекурсивную функцию, возводящую число a в степень n. Гарантируется, что все числа "помещаются" в стандартные вещественные (a и ответ) и целые (n) типы.

Входные данные
Вводится 2 числа - a и n (число n может быть отрицательным).

Выходные данные
Необходимо вывести значение an

Примеры
входные данные
2 -1
выходные данные
0.5


Информатика (35 баллов) | 189 просмотров
0

Язык и версия компилятора? Надо ли проверять исключения (a<0, a=0) ?

0

И еще: если a=0, какой результат типа вещественного типа должна вернуть функция для отрицательного n?

0

Исправляю описку: Если a=0, какой результат вещественного типа должна вернуть функция для отрицательного n?

0

Понятно... задачу бросили, а дальше - наплевать

Дан 1 ответ
0 голосов
Правильный ответ

Var  a,f: real;  n,i,g: integer;begin  read(a,n);  if n<0 then begin</span>   g:=n;   n:=-n;  end;  f:=1;  for i:=1 to n do   f:=a*f;  if g<0 then write(1/f)</span>  else write(f);  readln;  readlnend. 

(923 баллов)
0

А где тут, пардон, рекурсия?

0

Да и функции, собственно, тоже не вижу