打印斐波那契数组

// 斐波那契数组.cpp : 定义控制台应用程序的入口点。
//

c++实现
#include "stdafx.h"
#include <time.h>
#include<stdlib.h>
#include <vector>
int fibon(int n)
{


if (n <= 2){
return 1;
}

return fibon(n - 1) + fibon(n - 2);
}
int fibonac(int a, int b, int n)
{
printf("%d", n - 1);
printf("%d", n - 2);
if (n > 2)
{
return fibonac(a + b, a, n - 1);
}
return a;
}
void fib(std::vector<int> &Vec  )
{
for (int i = 0; i < 10; i++)
{
if (i == 0 || i == 1)
{
Vec.push_back(1);
}
else
{
Vec.push_back(Vec[i - 2] + Vec[i - 1]);
}
}

}
int _tmain(int argc, _TCHAR* argv[])
{
clock_t st, en;
double totaltime;
st = clock();
//fibon(10);
std::vector<int > Vec;
fib(Vec);
int k = 0;
for (auto i = Vec.begin(); i != Vec.end(); i++)
{
if (k==5)
{
printf("\n");
k = 0;
}
printf("%d,", *i);
k++;
}

en = clock();
totaltime = st - en;
printf("%.4f", totaltime);
system("pause");
return 0;

}



//PYTHON实现


import matplotlib.pyplot as plt
import matplotlib
from pylab import *
from matplotlib.ticker import MultipleLocator, FormatStrFormatter 
lis=[]
j=0
for i in range(100):
    if i==0 or i==1:
        lis.append(1)
    else:
        lis.append(lis[i-1]+lis[i-2])
for i in range(2):
    k=0
    while k !=10:
        k+=1
        print(lis[j],end=" ")
        j +=1
    print(" ")
lisx=[]
for i in range(100):
    lisx.append(i)
ymajorLocator  = MultipleLocator(0.5) #将y轴主刻度标签设置为0.5的倍数 
#ymajorFormatter = FormatStrFormatter('%1.1f') #设置y轴标签文本的格式 
#yminorLocator  = MultipleLocator(0.1) #将此y轴次刻度标签设置为0.1的倍数 
plt.plot(lisx,lis)
plt.show()   

;