Как возвести на «pasal ABC» в 10...100 степень?

Как возвести на pasal в 10...100 степень ? более оптимальным (компактным) способом?
  • Вопрос задан
  • 378 просмотров
Пригласить эксперта
Ответы на вопрос 1
Olej
@Olej
инженер, программист, преподаватель
Рекурсивный алгоритм Хоара:
double power( double a, unsigned n ) {
    switch( n ) {
       case 0:
          return 1.;
       case 1:
          return a;
       default: {
          double a2 = power( a, n / 2 );
          if( n & 1 ) 
             return a * a2 * a2;
          else 
             return a2 * a2;
       }
    }
}

Степень 1000 потребует 10 умножений.
Перепишите на PASCAL.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы