Advertisement
Guest User

Pow

a guest
Feb 18th, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.73 KB | None | 0 0
  1. //Нахождение чисел Фибоначчи {[0,1],[1,1]}*{F_0,F_1} = {F_1,F_2}
  2. // Задача сводится к возведению в степень
  3. #include <iostream>
  4. #define Sometype int  //Сделал макрос на замену произвольного типа на инт чтобы можно было запустить.
  5.  
  6. Sometype pow(Sometype x, int n) //Возводить в неотрицательную целую степень можно любой тип данных с определенным умножением
  7. {
  8.     if(n == 0) return (Sometype)1;
  9.     if(n & 1) return x*pow(x,n-1);
  10.     Sometype y = pow(x,n/2);
  11.     return y*y;
  12. }
  13.  
  14.  
  15. int main()
  16. {
  17.     std::cout << pow(2,5);
  18.     return 0;
  19. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement