Chciałem rozwiązać to zadanie poprzez mnożenie macierzy. Pierwszy raz operuje na macierzach i nie jestem pewien czy dobrze zrobiłem potęgowanie, i czy poprawnie zwracam liczbę Fn. Z góry dziękuje za pomoc.
long long int MultipleMatrix(long long int n)
{
const int T[2][2] = { {1, 1},
{1, 0} };
long long int C[2][2];
int i, j, k, m;
for(i = 0; i < 2; ++i)
for(j = 0; j < 2; ++j)
C[i][j] = 0;
for(m = 0; m < n; ++m)
{
for(i = 0; i < 2; ++i)
for(j = 0; j < 2; ++j)
for(k = 0; k < 2; ++k)
C[i][j] += T[i][k] * T[k][j];
}
return C[0][1];
}