斐波纳契数

时间:2018-02-17 16:31:39

标签: c++ loops

我正在编写由用户斐波纳契数确定的打印代码。问题是,当我输入0或1时,所有内容都按照我的预期运行,而当我输入3个或更多程序的输出是随机数(结果变量在计算机内存中的位置)时,请不要因为我这么简单的问题而烦恼,但是我正在使用VBA进行编码,在切换到C ++之后我无法看到我的代码有什么问题,而且我没有人可以寻求帮助,因为我是自我调整的。非常感谢。

#include <iostream>
#include <cstdlib>

using namespace std;

int main()
{
    int f0, f1, a, result;

    f0 = 0;
    f1 = 1;
    cout << "Type number of fibonacci element you want to print\n" << endl;
    cin >> a;

    if (a == 0)
    {
        result = f0;
        cout << "Your result it;\n";
        cout << result;
    }
    if (a == 1)
    {
        result = f1;
        cout << "Your result is";
        cout << result;
    }
    if (a >= 2)
    {
        for (int i = 2; i > a; i++)
            result = f0 + f1;
        f0 = f1;
        f1 = result;

        cout << "Your result is:\n";
        cout << result;
    }

    return 0;
}

1 个答案:

答案 0 :(得分:3)

for(int i=2;i<=a;i++){
   result = f0+f1;
   f0 = f1;
   f1 = result;
}

相反,这应该是这样的:

i<=a

首先:正确使用括号,其次:(i>a)代替>>> from datetime import datetime >>> d = datetime.strptime("23:59:05.823Z", "%H:%M:%S.%fZ") >>> d.strftime("%I:%M %p") '11:59 PM'