分享到新浪微博 分享到QQ空间 打印

无聊了- -3种方法实现20个斐波那契数生成。

其实斐波那契数列是有个通项公式的
带根号
不清楚在int中经过取舍会不会成为正常的项……

然后经过测试惊奇的发现竟然直接输出整数……?

#include <iostream>
#include <cmath>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
int n;
for (n=1; n < 21; n++) {
  cout<<(pow((1+sqrt(5.0))/2,n)-pow((1-sqrt(5.0))/2,n))/sqrt(5.0)<<',';
}
getchar();
return 0;
}

嫌多输出一个逗号的话把for中上界改成20,然后在后面再来句没有逗号的cout

[ 本帖最后由 roywillow 于 2010-4-11 18:35 编辑 ]

TOP

不过我没进行赋值
而是直接cout,那样也是直接取整?

main函数那个是带参数的形式
进行含参程序设计就用那个
bcb和vc的控制台程序似乎都是这样的啊

因为要连续输出20个数字,所以那个递归感觉很别扭呢……
如果只是求某个数字会相当简单的
不过递归似乎是效率最低的算法了

[ 本帖最后由 roywillow 于 2010-4-11 20:40 编辑 ]

TOP

额……我在BCB中新建一个控制台程序就会产生那样的主函数……
并且上来就是这些东西
引用:
//---------------------------------------------------------------------------

#pragma hdrstop

#include <tchar.h>
//---------------------------------------------------------------------------

#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
        return 0;
}
//---------------------------------------------------------------------------
谁知道BCB是个什么机制……

TOP