继续加班图片:#include <iostream>

来源:百度文库 编辑:神马品牌网 时间:2024/04/20 13:05:28
麻烦各位看一下我的程序,我的目的是要把输入的一个数写成一的奇数与2的次幂的乘积形式,但结果无法输出,麻烦各位帮忙看一下了
#include <iostream>
using namespace std;
int a[21]={1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576};
bool belong(int n,int a[]);
int belong1(int n,int a[]);
int main()
{
int n;
cin>>n;
while(n-->0)
{
int m,i;
cin>>m;
for (i=1;i<m;i+=2)
{
if((m%i==0)&&belong((m/i),a))
break;
}
cout<<i<<" "<<belong1((m/i),a)<<endl;
}
return 0;
}
bool belong(int n,int a[])
{
int i,t=0;
for(i=0;i<21;i++)
{
if(n=a[i])
t++;
break;
}
if(t>0)
return 1;
else
return 0;
}
int belong1(int n,int a[])
{
int i;
for(i=0;i<21;i++)
{
if (n=a[i])
break;
}
return i;
}