将一个数质因数分解,输出每个质因数和它的指数。
上代码:
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
void divide(int x)
{
for(int i=2;i*i<=x;i++)
{
if(x%i==0)
{
int cnt=0;
while(x%i==0)
{
cnt++;
x/=i;
}
cout<<i<<" "<<cnt<<endl;
}
}
if(x>1)cout<<x<<" "<<"1"<<endl;
}
int main()
{
cin>>n;
while(n--)
{
int a;
cin>>a;
divide(a);
cout<<endl;
}
return 0;
}