C++ 编程:计算数字的幂
为了理解这个示例,你应该具备以下 C++ 编程 主题的知识:
这个程序从用户那里获取两个数字(一个基数和一个指数),并计算幂。
数字的幂 = 基数^指数
示例 1:手动计算幂
#include <iostream>
using namespace std;
int main()
{
int exponent;
float base, result = 1;
cout << "分别输入基数和指数:";
cin >> base >> exponent;
cout << base << "^" << exponent << " = ";
while (exponent != 0) {
result *= base;
--exponent;
}
cout << result;
return 0;
}
输出
分别输入基数和指数:3.4
5
3.4^5 = 454.354
正如我们所知,一个数字的幂是该数字重复相乘的结果。例如,
5^3 = 5 x 5 x 5 = 125
这里,5 是 基数,3 是 指数。
在这个程序中,我们使用了 while
循环来计算一个数字的幂。
while (exponent != 0) {
result *= base;
--exponent;
}
请记住,在程序开始时我们已经将 result
初始化为 1
。
让我们看看如果 base == 5
和 exponent == 3
时,这个 while
循环是如何工作的。
迭代次数 | result *= base | exponent | exponent != 0 | 执行循环? |
---|---|---|---|---|
第1次 | 5 | 3 | true | 是 |
第2次 | 25 | 2 | true | 是 |
第3次 | 125 | 1 | true | 是 |
第4次 | 625 | 0 | false | 否 |
然而,上述技术仅适用于指数是正整数的情况。
如果你需要计算一个数字的幂,而指数为任意实数,你可以使用 pow()
函数。
示例 2:使用 pow() 函数计算幂
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
float base, exponent, result;
cout << "分别输入基数和指数:";
cin >> base >> exponent;
result = pow(base, exponent);
cout << base << "^" << exponent << " = " << result;
return 0;
}
输出
分别输入基数和指数:2.3
4.5
2.3^4.5 = 42.44
在这个程序中,我们使用了 pow()
函数来计算一个数字的幂。
请注意,我们引入了 cmath
头文件,以便使用 pow()
函数。
我们从用户那里获取 base
和 exponent
。
然后我们使用 pow()
函数来计算幂。第一个参数是基数,第二个参数是指数。