#include<iostream> using namespace std; int main() { int n,i; while(cin>>n){ printf("%d=",n); for(i=2;i<=n;i++) while(n!=i) { if(n%i==0) { printf("%d*",i); n=n/i; } else break; } printf("%d ",n); } }
复习代码:(类比筛选)
#include<iostream> using namespace std; void gcd(int n){ int i; cout<<n<<"="; for(i=2;i<=n;i++) while(n!=i) { if(n%i==0) { printf("%d*",i); n=n/i; } else break; } printf("%d ",n); } int main() { int n,i,x,y; cin>>x>>y; for(i=x;i<=y;i++) gcd(i); }
#include<iostream> #include<cmath> using namespace std; void gcd(int n){ printf("%d=",n); for(int i=2;i<=n;i++) { while(n%i==0){ n/=i; if(n!=1) printf("%d*",i); else cout<<i<<endl; } } } int main() { int a,b; cin>>a>>b; for(int i=a;i<=b;i++) gcd(i); }