Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Нахождение чисел Фибоначчи {[0,1],[1,1]}*{F_0,F_1} = {F_1,F_2}
- // Задача сводится к возведению в степень
- #include <iostream>
- #define Sometype int //Сделал макрос на замену произвольного типа на инт чтобы можно было запустить.
- Sometype pow(Sometype x, int n) //Возводить в неотрицательную целую степень можно любой тип данных с определенным умножением
- {
- if(n == 0) return (Sometype)1;
- if(n & 1) return x*pow(x,n-1);
- Sometype y = pow(x,n/2);
- return y*y;
- }
- int main()
- {
- std::cout << pow(2,5);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement