分解质因数
当无法分解是输出“no answer”
: | #include<iostream> | |
2 | : | using namespace std; |
3 | 3 : | int main() |
4 | : | { |
5 | 3 : | int i,k=0,n; |
6 | : | int sushu(int ) ; |
7 | 3 : | cin>>n; |
8 | 3 : | if(sushu(n)) cout<<"no answer"; |
9 | : | else{ |
10 | 12 : | for(i=2;i<=n;i++){ |
11 | 10 : | if(k==0&&n%i==0){ |
12 | 2 : | cout<<n<<'='<<i; |
13 | 2 : | n/=i; |
14 | 2 : | k=1; |
15 | : | } |
16 | 26 : | while(n%i==0){ |
17 | 6 : | cout<<'*'<<i; |
18 | 6 : | n/=i; |
19 | : | } |
20 | : | } |
21 | : | } |
22 | 3 : | } |
23 | 3 : | int sushu(int m) |
24 | : | { |
25 | : | int i; |
26 | 3 : | for(i=2;i<m;i++){ |
27 | 2 : | if(m%i==0) return 0; |
28 | 1 : | }return 1; |
29 | 9 : | } |