#include #include #include #include using namespace std; typedef array , 2>Matrix; Matrix operator*(Matrix A,Matrix B) { Matrix C; for (int i = 0; i < 2; i++) for (int j = 0; j < 2; j++){ C[i][j] = 0; for (int k = 0; k < 2; k++) C[i][j] += A[i][k] * B[k][j]; } return C; }
void print(Matrix C){ for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) cout << C[i][j] << "\t"; cout << endl; } }
Matrix power(Matrix A, int n){ Matrix D = { {{1,0},{0,1}} }; for (int i = 1; i <= n; i++) D = D*A; return D; }
Matrix operator^(Matrix A, int n) { Matrix D = { {{1,0},{0,1}} }; bitset<8> b(n); for (int i = 7; i >= 0; i--) { D = D*D; if (b[i])D = D*A; } return D; }
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include<iostream>
回覆刪除#include<cstdlib>
#include<array>
using namespace std;
using Matrix_2X2=array<array <long long, 2>, 2 > ; //將陣列包裝成物件
Matrix_2X2 operator*(Matrix_2X2 A, Matrix_2X2 B)
{
Matrix_2X2 C;
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++) {
C[i][j] += A[i][k] * B[k][j];
}
}
}return C;
}
void print(Matrix_2X2 C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
}cout << endl;
}
}
Matrix_2X2 Matrix_pow(Matrix_2X2 A, int n) {
Matrix_2X2 D = { {{1,0},{0,1}} };
for (int i = 1; i <= 91; i++) {
D = D*A;
}return D;
}
int main() {
Matrix_2X2 A = { { { 1,1 }
,{ 1,0 } } };
Matrix_2X2 C = Matrix_pow(A, 91);
print(C);
cout <<"\n矩陣A的91次方= " <<C[0][0]<<endl;
system("PAUSE");
return 0;
}
#include<iostream>
回覆刪除#include<cstdlib>
#include<array>
using namespace std;
using Matrix_2X2=array<array <long long, 2>, 2 > ; //將陣列包裝成物件
Matrix_2X2 operator*(Matrix_2X2 A, Matrix_2X2 B)
{
Matrix_2X2 C;
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++) {
C[i][j] += A[i][k] * B[k][j];
}
}
}return C;
}
void print(Matrix_2X2 C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
}cout << endl;
}
}
Matrix_2X2 Matrix_pow(Matrix_2X2 A, int n) {
Matrix_2X2 D = { {{1,0},{0,1}} };
for (int i = 1; i <= 91; i++) {
D = D*A;
}return D;
}
int main() {
Matrix_2X2 A = { { { 1,1 }
,{ 1,0 } } };
Matrix_2X2 C = Matrix_pow(A, 91);
print(C);
cout <<"\n矩陣A的91次方= " <<C[0][0]<<endl;
system("PAUSE");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array , 2>Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++){
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C){
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n){
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
Matrix operator^(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D*A;
}
return D;
}
int main()
{
Matrix A = { {{1,1},{1.0}} };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
Matrix C = power(A, 91);
system("Pause");
return 0;
}
#include<iostream>
回覆刪除#include<cstdlib>
#include<array>
#include<bitset>
using namespace std;
using Matrix_2X2=array<array <long long, 2>, 2 > ; //將陣列包裝成物件
Matrix_2X2 operator*(Matrix_2X2 A, Matrix_2X2 B)
{
Matrix_2X2 C;
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++) {
C[i][j] += A[i][k] * B[k][j];
}
}
}return C;
}
void print(Matrix_2X2 C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
}cout << endl;
}
}
Matrix_2X2 Matrix_pow(Matrix_2X2 A, int n) {
Matrix_2X2 D = { {{1,0},{0,1}} };
for (int i = 1; i <= 91; i++) {
D = D*A;
}return D;
}
Matrix_2X2 operator^(Matrix_2X2 A, int n) {
Matrix_2X2 D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i] == 1)D = D*A;
}return D;
}
int main() {
Matrix_2X2 A = { { { 1,1 }
,{ 1,0 } } };
Matrix_2X2 C = Matrix_pow(A, 91);
print(C);
cout <<"\n矩陣A的91次方C[0][0] = " <<C[0][0]<<endl;
cout << "--------------------------\n";
cout << "<bitset>轉2次元作次方運算";
C = A ^ 91;
cout << "\n<bitset>矩陣A的91次方= " << C[0][0] << endl;
system("PAUSE");
return 0;
}
#include<iostream>
回覆刪除#include<cstdlib>
#include<array>
#include<bitset>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator * (Matrix A, Matrix B) {
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
cout << endl;
}
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++) {
D = D * A;
return D;
}
}
Matrix operator^(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D * A;
}
return D;
}
int main() {
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列F(" << 91 << ")=" << C[0][0] << endl;
bitset<8> B(91);
cout << B << endl;
Matrix D = A ^ 91;
print(D);
cout << "費氏數列F(" << 91 << ")=" << D[0][0] << endl;
system("pause");
return 0;
}
#include<iostream>
回覆刪除#include<cstdlib>
#include<array>
#include<bitset>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator * (Matrix A, Matrix B) {
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
cout << endl;
}
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++) {
D = D * A;
return D;
}
}
Matrix operator^(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D * A;
}
return D;
}
int main() {
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列F(" << 91 << ")=" << C[0][0] << endl;
bitset<8> B(91);
cout << B << endl;
Matrix D = A ^ 91;
print(D);
cout << "費氏數列F(" << 91 << ")=" << D[0][0] << endl;
system("pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <array>
#include <fstream>
using namespace std;
typedef array<array<long long, 2>, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array< long long, 2>, 2 > Matrix;
Matrix operator*(Matrix A,Matrix B)
{
Matrix C;
for (int i =0;i<2;i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout << C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 0; i < 2; n++)
D = D *A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列f(" << 91 << ")=" << C[0][0] << endl;
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
#include <string>
#include <fstream>
#include <omp.h>
#include<array>
using namespace std;
using Matrix_2x2 = array<array<int,2>,2>;
Matrix_2x2 matrixMul( Matrix_2x2 A, Matrix_2x2 B) {
Matrix_2x2 C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0 ; k < 2 ; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix_2x2 C)
{
cout << C[0][0] << "\t" << C[0][1] << endl;
cout << C[1][0] << "\t" << C[1][1] << endl;
cout << "==================================\n";
}
int main()
{
Matrix_2x2 A = { { {1,2},{3,4}} };
Matrix_2x2 B = {{ {1,2},{3,4} }};
Matrix_2x2 C=matrixMul(A,B);
print(C);
cout << "矩陣函數\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator * (Matrix A, Matrix B) {
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
cout << endl;
}
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++) {
D = D * A;
return D;
}
}
Matrix operator^(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D * A;
}
return D;
}
int main() {
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列F(" << 91 << ")=" << C[0][0] << endl;
bitset<8> B(91);
cout << B << endl;
Matrix D = A ^ 91;
print(D);
cout << "費氏數列F(" << 91 << ")=" << D[0][0] << endl;
system("pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator * (Matrix A, Matrix B) {
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
cout << endl;
}
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++) {
D = D * A;
return D;
}
}
Matrix operator^(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D * A;
}
return D;
}
int main() {
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列F(" << 91 << ")=" << C[0][0] << endl;
bitset<8> B(91);
cout << B << endl;
Matrix D = A ^ 91;
print(D);
cout << "費氏數列F(" << 91 << ")=" << D[0][0] << endl;
system("pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator * (Matrix A, Matrix B) {
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
cout << C[i][j] << "\t";
cout << endl;
}
}
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++) {
D = D * A;
return D;
}
}
Matrix operator^(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
bitset<8> b(n);
for (int i = 7; i >= 0; i--) {
D = D*D;
if (b[i])D = D * A;
}
return D;
}
int main() {
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
print(C);
cout << "費氏數列F(" << 91 << ")=" << C[0][0] << endl;
bitset<8> B(91);
cout << B << endl;
Matrix D = A ^ 91;
print(D);
cout << "費氏數列F(" << 91 << ")=" << D[0][0] << endl;
system("pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
using namespace std;
void matrixMul(int C[2][2], int A[2][2], int B[2][2]) {
for (int i=0; i<2 ; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][j] * B[k][j];
}
}
void print(int C[2][2]) {
cout << C[0][0] << "\t" << C[0][1] << endl;
cout << C[1][0] << "\t" << C[1][1] << endl;
cout << "================================\n";
}
int main() {
int A[2][2] = { {1,2},{3,4} };
int B[2][2] = { { 1,2 },{ 3,4 } };
int C[2][2];
matrixMul(C, A, B);
print(C);
cout << "矩陣乘法\n";
system("Pause");
return 0;
}
#include <iostream>
回覆刪除#include <cstdlib>
using namespace std;
void matrixMul(int C[2][2], int A[2][2], int B[2][2]) {
for (int i=0; i<2 ; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][j] * B[k][j];
}
}
void print(int C[2][2]) {
cout << C[0][0] << "\t" << C[0][1] << endl;
cout << C[1][0] << "\t" << C[1][1] << endl;
cout << "================================\n";
}
int main() {
int A[2][2] = { {1,2},{3,4} };
int B[2][2] = { { 1,2 },{ 3,4 } };
int C[2][2];
matrixMul(C, A, B);
print(C);
cout << "矩陣乘法\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
B10533066曾楷杰 提到...
回覆刪除#include
#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix 😎
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
#include
using namespace std;
typedef array, 2>Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i<2; i++)
for (int j = 0; j<2; j++) {
C[i][j] = 0;
for (int k = 0; k<2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
ostream& operator<<(ostream& out, Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
out << C[i][j] << "\t";
out << endl;
}
return out;
}
Matrix power(Matrix A, int n) {
Matrix D = { { { 1,0 },{ 0,1 } } };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { { 1,1 },{ 1,0 } } };
Matrix C = power(A, 91);
cout << "費式數列f("<<91<<")="<< C [0][0]<<endl;
system("Pause");
return 0;
}
#include
回覆刪除#include
#include
using namespace std;
typedef array < array < long long, 2>, 2> Matrix;
Matrix operator*(Matrix A, Matrix B)
{
Matrix C;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++) {
C[i][j] = 0;
for (int k = 0; k < 2; k++)
C[i][j] += A[i][k] * B[k][j];
}
return C;
}
void print(Matrix C) {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++)
cout<<C[i][j] << "\t";
cout << endl;
}
}
Matrix power(Matrix A, int n) {
Matrix D = { {{1,0},{0,1}} };
for (int i = 1; i <= n; i++)
D = D*A;
return D;
}
int main()
{
Matrix A = { { {1,1},{1,0}} };
Matrix C = power(A,91);
print(C);
cout << "hello .\n";
system("Pause");
return 0;
}