Возведение числа в степень

Задача

Как на языке Pascal возвести число в степень.

Решение

Алгоритм решения задачи: 

Чтобы возвести число в степень, его надо умножить само на себя количество раз, равное показателю степени. Т.е. возведение числа n в степень d будет выглядеть так:

nd = n1 * n2 * n3 * … * nd, где индексы внизу просто указывают очередное по счету n.

Если d равно нулю, то, какое бы число не стояло в основании степени, результат всегда будет равен единице:

n0 = 1.

Если показатель степени отрицателен (d < 0), то результат определяется такой формулой:

nd = 1 / (n1 * n2 * n3 * … * nd).

В примере программы на языке Паскаль количество итераций (повторений) цикла whileравно модулю показателю степени числа (переменная deg).

Если deg равно нулю, то цикл while не выполнится ни разу, т.к. начальное значение переменной i равно нулю, а 0 < 0 ложное утверждение. В результате переменная res будет содержать значение 1.

Если показатель степени был отрицательным числом, то нужно в последствие разделить единицу на значение переменной res.

Программа на языке Паскаль: 

 

var
    num, deg: integer;
    res: real;
    i: byte;
 
begin
 
    write ('Число: '); readln (num);
    write ('Степень: '); readln (deg);
 
    res := 1;
 
    i := 0;
    while i < abs(deg) do begin
        res := res * num;
        i := i + 1
    end;
 
    if deg < 0 then
        res := 1 / res;
 
    writeln (res:10:5);
 
readln
end.

Тема

Циклы

Уровень

Простые задачи

Комментарии

var x,n:integer;
BEGIN
writeln('Введите число: ');
readln(x);
writeln('Введите степень: ');
readln(n);
writeln('Равно: ', exp(n*LN(x)));
END.