尝试一次将两个数字打印到屏幕时遇到简单循环问题
Having trouble with a simple loop when trying to print two numbers to the screen at once
我需要询问用户在屏幕上显示了多少个斐波那契数列。我已经完成了几乎所有的事情,但是因为我一次在屏幕上打印两个数字,所以它打印的是用户输入的两倍。我只是将用户输入的数字除以二,但奇数不起作用。如果有人能想到解决方案,谢谢。 http://en.wikipedia.org/wiki/Fibonacci_number <-- 斐波那契数如果你不知道的话
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout << "How many numbers do you want generated in the Fibonacci sequence.\n";
int num;
cin >> num;
int num1 = 0, num2 = 1;
int sum;
int f = 1;
while (f <= num)
{
cout << num1 << setw(5) << num2 << setw(5);
sum = num1 + num2;
num1 = sum;
num2 = sum + num2;
++f;
}
}
由于您一次生成两个数字,因此您需要一次递增计数器 2:
int f = 0;
for (; f < num; f += 2) {
// body
}
然后如果num
是偶数,打印最后一个
if (f == num) {
// print num1
}
循环如下:
while ( f <= num )
{
cout << num1 << setw(5);
if ( ++f <= num )
{
cout << num2 << setw(5);
/// rest of calcs
++f;
}
}
在斐波那契数列中,你至少需要2,少了没有意义。超过 2 你只需要打印总和。
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout << "How many numbers do you want generated in the Fibonacci sequence.\n";
int num;
cin >> num;
int num1 = 0, num2 = 1;
int sum;
cout << num1 << setw(5) << num2 << setw(5);
int f = 3;
while (f <= num)
{
sum = num1 + num2;
cout << sum << setw(5);
num1 = num2;
num2 = sum;
++f;
}
cout << std::endl;
}
我需要询问用户在屏幕上显示了多少个斐波那契数列。我已经完成了几乎所有的事情,但是因为我一次在屏幕上打印两个数字,所以它打印的是用户输入的两倍。我只是将用户输入的数字除以二,但奇数不起作用。如果有人能想到解决方案,谢谢。 http://en.wikipedia.org/wiki/Fibonacci_number <-- 斐波那契数如果你不知道的话
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout << "How many numbers do you want generated in the Fibonacci sequence.\n";
int num;
cin >> num;
int num1 = 0, num2 = 1;
int sum;
int f = 1;
while (f <= num)
{
cout << num1 << setw(5) << num2 << setw(5);
sum = num1 + num2;
num1 = sum;
num2 = sum + num2;
++f;
}
}
由于您一次生成两个数字,因此您需要一次递增计数器 2:
int f = 0;
for (; f < num; f += 2) {
// body
}
然后如果num
是偶数,打印最后一个
if (f == num) {
// print num1
}
循环如下:
while ( f <= num )
{
cout << num1 << setw(5);
if ( ++f <= num )
{
cout << num2 << setw(5);
/// rest of calcs
++f;
}
}
在斐波那契数列中,你至少需要2,少了没有意义。超过 2 你只需要打印总和。
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout << "How many numbers do you want generated in the Fibonacci sequence.\n";
int num;
cin >> num;
int num1 = 0, num2 = 1;
int sum;
cout << num1 << setw(5) << num2 << setw(5);
int f = 3;
while (f <= num)
{
sum = num1 + num2;
cout << sum << setw(5);
num1 = num2;
num2 = sum;
++f;
}
cout << std::endl;
}