華為筆試-質數因子
阿新 • • 發佈:2018-11-10
題目描述
功能:輸入一個正整數,按照從小到大的順序輸出它的所有質數的因子(如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<vector> using namespace std; int main() { vector<int> vecint; long num; cin >> num; for(long i = 2; i <= num; i++) { while(!(num%i)) { vecint.push_back(i); num = num / i; } if(num == 1) break; } for(int i = 0; i < vecint.size(); i++) cout << vecint[i] << " "; return 0; }