我正在编写由用户斐波纳契数确定的打印代码。问题是,当我输入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;
}
答案 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'
。