题目描述
功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )
最后一个数后面也要有空格
详细描述:
函数接口说明:
public String getResult(long ulDataInput)
输入参数:
long ulDataInput:输入的正整数
返回值:
String
输入描述:
输入一个long型整数
输出描述:
按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。
示例1
输入
180
输出
2 2 3 3 5
代码:
第六题质数因子
#include<iostream>
#include<string>
using namespace std;
string getResult(long ulDataInput)
{
string retStr;
long tem = ulDataInput;
for (int i = 2; i <= ulDataInput; i++)
{
if (ulDataInput%i == 0 )
{
retStr += to_string(i) + ' ';
ulDataInput = ulDataInput / i;
i = 1;
}
}
return retStr;
}
int main()
{
long inpNum;
cin >> inpNum;
if (inpNum < 0)
{
return -1;
}
else
{
cout << getResult(inpNum).c_str() << endl;
}
return 0;
}