|
Post by huangno1 on Feb 24, 2017 8:24:18 GMT -8
程式說明
輸入一個整數值 n (n >= 2),此功能將輸出該數的質因數分解。
此處假設該數的所有質因數均不大於 1000。以 300 為例,其質因數分解為 300 = (2^2)x(3^1)x(5^2)。輸出時請依質因數由小到大輸出,格式請參照下列範例。(請注意,在 C/C++ 語言中,^ 是 XOR運算,並不是次方的意思,這裡只是暫時借用它。)
輸入範例一
2
輸出範例一
(2^1)
輸入範例二
6
輸出範例二
(2^1)(3^1)
輸入範例三
34759179
輸出範例三
(3^3)(7^2)(13^1)(43^1)(47^1)
***以下為參考程式***(注意!!複製貼上此程式碼,將對你沒好處)
#include <stdio.h>
int main()
{
int num = 0 , i = 2 , t ;
scanf( "%d" , &num ) ;
while ( num >= i )
{
t = 0 ;
while ( num % i == 0 )
{
t = t + 1 ;
num = num / i ;
}
if ( t > 0 )
{
printf ( "(%d^%d)" , i , t );
}
i++ ;
}
return 0;
}
|
|