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

Оцени эту статью

Простое возведение числа в степень N — это N — 1 умножений в цикле. А умножение — это дорогая, трудоёмкая операция…

Формулировка данной задачи такая:

  • написать функцию возведение в степень X**N, но так, чтобы для этого требовалось минимальное число операций умножения);
  • постарайтесь контролировать и включить в вывод число потребовавшихся для вычисления умножений.

P.S. логика такого решения не моя, а знаменитого гуру Чарльза Энтони Хоара (Charles Anthony Richard Hoare), я только записал кодом его решение:

И вот несколько образцов выполнения, то что должно получиться:

задача с решением, возведение в степень, логика Хоара, Hoare, практика программирования на с++

Рассылка новых уроков по программированию:

Olej

Об авторе Olej

Стаж практических программных разработок около 40 лет. Преподаватель международной софтверной компании Global Logic. Постоянный автор публикаций IBM Developer Works. Научный редактор книжного издательства компьютерной литературы "Символ-Плюс", Санкт-Петербург.

Задача: Возведение числа в степень: 1 комментарий

  1. Этот пример ещё раз показывает мощь рекурсии как метода вычислений. Попробуйте записать этот алгоритм в итерационной технике (циклами) … а ещё лучше — объяснить затем кому-то как этот записанный алгоритм работает.
    Любите рекурсию!

Добавить комментарий

Код размещайте в тегах: <pre class="lang:c++ decode:true ">YOUR CODE</pre>