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

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

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

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

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

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

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

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

Задача: Возведение числа в степень
Оцени эту статью

Об авторе Olej

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

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

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

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *