蓝桥杯 参考题目 黄金队列(水题)

  黄金分割数0.618与美学有重要的关系。舞台上报幕员所站的位置大约就是舞台宽度的0.618处,墙上的画像一般也挂在房间高度的0.618处,甚至股票的波动据说也能找到0.618的影子....

  黄金分割数是个无理数,也就是无法表示为两个整数的比值。0.618只是它的近似值,其真值可以通过对5开方减去1再除以2来获得,我们取它的一个较精确的近似值:0.618034

  有趣的是,一些简单的数列中也会包含这个无理数,这很令数学家震惊!

  1 3 4 7 11 18 29 47 .... 称为“鲁卡斯队列”。它后面的每一个项都是前边两项的和。

  如果观察前后两项的比值,即:1/3,3/4,4/7,7/11,11/18 ... 会发现它越来越接近于黄金分割数!

  你的任务就是计算出从哪一项开始,这个比值四舍五入后已经达到了与0.618034一致的精度。

  请写出该比值。格式是:分子/分母。比如:29/47

  答案写在“解答.txt”中,不要写在这里!


 

  水题。

  求斐波那契数列+模拟除法。

  解答:1364/2207

 1 #include <iostream>

 2 using namespace std;  3 unsigned long long f[1000];  4 int main()  5 {  6     f[1]=1;  7     f[2]=3;  8     int i;  9     for(i=3;f[i-1]<1e18;i++){ 10         f[i] = f[i-1] + f[i-2]; 11  } 12     cout<<i<<endl; 13     i--; 14     for(int i=3;i<30;i++){ 15         unsigned long long x = f[i-2]; 16         unsigned long long y = f[i-1]; 17         cout<<x<<' '<<y<<endl; 18         for(int j=0;j<=20;j++){ 19             cout<<x/y; 20             x = (x%y)*10; 21             if(j==0) 22                 cout<<'.'; 23             if(j%10==0) 24                 cout<<' '; 25  } 26         cout<<endl; 27  } 28     return 0; 29 }

 

Freecode : www.cnblogs.com/yym2013

你可能感兴趣的:(蓝桥杯)