c++ 求a的b次方代码求改

来源:百度知道 编辑:UC知道 时间:2024/06/15 00:52:22
#include <iostream>
using namespace std;

float out(float a,int b )
{
float sum;
if(b<=4)
{
for(int c=1;c<=b;c=c+1)
{
sum = sum*a;

}
return sum;
}

else
{
int num;
int less=5;
int more=10;
while(b>more)
{
less = less * 2;
more = more * 2;
num = num+1;
}
float sum=a;
for(int i=0;i<num;i++)
{
sum=sum*sum;
sum=sum*out(a,b-less);
}
}
return 0.0;
}

float main()
{
float a, int b,float sum;
cin>>a>>b;
out(a,b);
cout<<sum;
return 0.0;
}
在线等

for(int c=1;c<=b;c=c+1) sum = sum*a;
这里写得复杂了低效了
while(b--) sum *= a; 就高效得多了

for(int i=0;i<num;i++)
{
sum=sum*sum;
sum=sum*out(a,b-less);
}
同理改为
while(num--) sum *= sum * out(a,b-less);

另外,main是int类型的,不能为float

已知2的a 次方乘以27的b次方乘以37的c次方等于1998,求(-a+b-c)的2005次方 2的a次方=3 2的b次方=6 2的c次方=24,求a.b.c之间的关系是什么? 以知2的A次方=3,2的B次方=6,2的C次方=12求A.B.C的关系 2的a次方等于3,2的b次方等于6,2的c次方等于24,求a,b,c之间的关系 已知a-b=2,b-c=2,a+c=14,求a的2次方-b的2次方. a乘b的b次方乘c加a=2000,(a,b,c均为质数!)求a+b+c=多少? 设a,b,c,d都是自然数,且a的5次方=b的4次方,c的3次方d的2次方,a-c=17,求d-b的值. 2的a次方X3的b次方X37的c次方=1998,a、b、c均为自然数。求:(a-b+c)的2006次方的值 已知a,b,c,d均为正整数,且a的5次方等于b的4次方,c的3次方等于d的2次方,c-a=19,求d-b的值。 √2-a+|b+1|+(c+3)的2次方=0 求2a+b-c的值!