Составить программу возведения в 3 степень

Составить программу возведения в 3 степень

Составить программу возведения заданного числа в третью степень, используя следующую закономерность:

43 = 13 + 15 + 17 + 19

53 = 21 + 23 + 25 + 27 + 29
13(23,33,34,35)=это 1 в кубе

Небольшой анализ и использование свойств арифметической прогрессии позволяет вывести следующие закономерности.

Куб числа представляет собой сумму последовательных нечетных чисел, причем число слагаемых равно возводимому в куб числу.

Значение первого числа в сумме равно

N1 = K*(K-1) + 1, где К — число, куб которого требуется найти.

Отсюда и решение.

S := 0; <переменная для накопления суммы>
n := k * (k-1) + 1; <первое число в последовательности>
m := 0; <число членов последовательности>
while m "сделайте за меня". И не ошибитесь в выборе типа для переменных. Integer позволяет оперировать только с числами от -32768 до +32767. Ставьте Longint, не прогадаете.

Исходник простой программы, которая возводит любое, введённое с клавиатуры число в нужную вам степень. Открывается программами Pascal ABC, Pascal ABC.Net и Turbo Pascal. Пояснительных комментариев нет. Имеет не скомпилированный формат для редактирования .pas. Данная программа использует раннее пройденный цикл параметром FOR.

Исходный код программы:

Разобраться в коде данной программы вы можете, изучив Урок 5 и Урок 6: Циклы while, for, repeat. Исходник программы для нахождения степени числа входит в серию уроков Циклы.

Для возведения числа x в степень n, как правило, используют стандартный метод, т. е. число x умножают n раз само на себя. В задачах математического толка, решаемых при помощи бумаги и ручки, такой метод вполне приемлем, ведь степенная функция быстро растет и поэтому сомнительно, что придется производить затруднительные операции вручную.

Другое дело программирование, где важно не только решить поставленную задачу, но и составить оптимальное решение, удовлетворяющее предусмотренному диапазону входных данных. Так, в частности, для операции возведения числа в степень имеется алгоритм, позволяющий значительно сократить число требуемых операций. Он достаточно прост и основывается на математических свойствах степеней.

Читайте также:  Чем открыть iso образ windows 10

Пусть имеется некоторая степень x n , где x – действительное число, а n – натуральное. Тогда для x n справедливо равенство:

x n = (x m ) k

При этом m*k=n. Например: 3 6 =(3 3 ) 2 , 5 7 =(5 7 ) 1 . Это свойство является одним из основных степенных свойств, и именно на нем основывается рассматриваемый метод. Далее, заметим, что в случае, если n является четным числом, то верно следующее равенство:

x n = (x n/2 ) 2 = x n/2 * x n/2

Так, если x=3, а n=6, то имеем 3 6 = (3 6/2 ) 2 = 3 6/2 * 3 6/2 . Используя это свойство, удастся существенно уменьшить число операций необходимых для возведения x в степень n. Теперь адаптируем формулу для случая с нечетным n. Для этого понадобиться просто перейти к степени на единицу меньшей. Например: 5 7 = 5 6 *5, 12 5 = 12 4 *12. Общая форма равенства перехода:

x n = x n-1 *x

В программе, реализующей алгоритм быстрого возведения в степень, используются указанные свойства: если степень n четная, то переходим к степени вдвое меньшей, иначе заменяем по имеющимся правилам нечетную степень на четную.

Ссылка на основную публикацию
Adblock detector