1.題目描述
任意輸入一正整數?N?,求出它的所有質因子。如:10=2×5,20=2×2×5。
輸入
輸入只有一行,包括?11個整數?n?(1≤n≤32768)
輸出
輸出若干行,按從小到大的順序給出這個數的所有質因子,每行一個。
樣例
輸入
36
輸出
2
2
3
3
輸入
11
輸出
11
2.參考代碼(C語言版)
include <stdio.h>
int main(void)
{
?? ?int n;
?? ?int i=1;
?? ?
?? ?scanf("%d", &n);
?? ?while(n!=1)
?? ?{
?? ??? ?i++;
?? ??? ?if(n%i==0)
?? ??? ?{
?? ??? ??? ?printf("%d\n",i);
?? ??? ??? ?n/=i;
?? ??? ??? ?i=1;
?? ??? ?}
?? ?}
?? ?return 0;?? ?
}
注意:每次找到一個質因數,讓新的因數從2開始重新累加。這樣能夠保證只要整除,肯定是質因數。
今天內容到此結束,下次再見!