C ++因子程序:输出给定的因子数

时间:2014-03-31 05:52:26

标签: c++

我正在编写一个简单的程序,通过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;在这个例子中。

非常感谢帮助。

1 个答案:

答案 0 :(得分:0)

而不是

cout << "There are " << " factors." << endl;

使用

cout << "There are " << counter << " factors." << endl;

如果您这样做,则必须移动您定义counter的位置。

它不是main中的第一行,而是需要移动到while循环中的第一行。