C ++程序计算数字的幂
数字的幂可以计算为x^y,其中x是数字,y是幂。
例如。
Let’ssay,x=2andy=10
x^y=1024
Here,x^yis2^10
可以使用递归和非递归程序来计算数字的幂。分别给出如下。
使用非递归程序的数字幂
使用非递归程序查找数字幂的程序如下所示-
示例
#include<iostream>
using namespace std;
int power(int x, int y) {
int i,power=1;
if(y == 0)
return 1;
for(i=1;i<=y;i++)
power=power*x;
return power;
}
int main() {
int x = 3;
int y = 4;
cout<<"x = "<<x<<endl;;
cout<<"y = "<<y<<endl;
cout<<"x^y = "<<power(x,y);
return 0;
}x = 3 y = 4 x^y = 81
在上述程序中,该函数power()用于计算数字的幂。这是一个非递归函数。在该函数中,使用了一个从1到y的for循环。对于循环的每次迭代,x乘以幂。
因此,x乘以自身y倍,结果存储在幂中。这导致x^y被存储在幂中。然后,电源返回到该main()方法。
以下代码段演示了这一点-
int power(int x, int y) {
int i, power = 1;
if(y==0)
return 1;
for(i=1;i<=y;i++)
power = power*x;
return power;
}在中main(),显示x,y和x^y的值。这在下面给出的代码段中显示-
cout<<"x = "<<x<<endl;; cout<<"y = "<<y<<endl; cout<<"x^y = "<<power(x,y);
使用递归程序的数字幂
使用递归程序查找数字幂的程序如下所示。
示例
#include<iostream>
using namespace std;
int power(int x, int y) {
if (y == 0)
return 1;
else if (y%2 == 0)
return power(x, y/2)*power(x, y/2);
else
return x*power(x, y/2)*power(x, y/2);
}
int main() {
int x = 3;
int y = 4;
cout<<"x = "<<x<<endl;;
cout<<"y = "<<y<<endl;
cout<<"x^y = "<<power(x,y);
return 0;
}输出结果
x = 3 y = 4 x^y = 81
在上面的程序中,power()是一个递归函数。如果y的值为0,则返回1。如果y为偶数,则以值x和y/2递归调用自身,并返回power(x,y/2)*power(x,y/2)。如果y为奇数,则以x和y/2值递归调用自身,并返回x*power(x,y/2)*power(x,y/2)。下面的代码段对此进行了演示。
int power(int x, int y) {
if (y == 0)
return 1;
else if (y%2 == 0)
return power(x, y/2)*power(x, y/2);
else
return x*power(x, y/2)*power(x, y/2);
}在中main(),显示x,y和x^y的值。这在下面给出的代码段中显示。
cout<<"x = "<<x<<endl;; cout<<"y = "<<y<<endl; cout<<"x^y = "<<power(x,y);
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短