我正在编写一个简单的程序,通过Linux重定向查找整数列表的因子。我差不多完成了,但我被困在一个方面。到目前为止,这是我的计划:
#include<iostream>
using namespace std;
int main()
{
int counter = 0;
int factor;
cin >> factor;
while (cin)
{
if (factor < 0)
break;
cout << "The factors of " << factor << " are " << endl;
for(int i=factor; i>=1; i--)
if (factor % i == 0)
{
counter++;
cout << i << endl;
}
cout << "There are " << " factors." << endl;
cout << endl;
cin >> factor;
}
return 0;
}
现在我遇到的问题在于&#34; cout&lt;&lt; &#34;有&#34; &LT;&LT; &#34;因素&#34。 &LT;&LT; ENDL; &#34 ;.我不确定如何计算程序输出的因子数量。
例如:
7的因素是
1
7
有两个因素。
我如何计算和输出&#34; 2&#34;在这个例子中。
非常感谢帮助。
答案 0 :(得分:0)
而不是
cout << "There are " << " factors." << endl;
使用
cout << "There are " << counter << " factors." << endl;
如果您这样做,则必须移动您定义counter
的位置。
它不是main
中的第一行,而是需要移动到while
循环中的第一行。