我正在学习C++ language
,但对一件小事感到困惑,就是这样
下面我已经推出了一些制作整数平方的代码。但我不理解x
函数中raiseToPow
的处理方式。这里double x
是一个参数,它从调用函数中获取值并传递给for循环中的x
。那么它是如何使该整数的平方从x
传递的。请指导我。
#include <iostream>
using namespace std;
double raiseToPow(double x, int power){
double result;
result = 1.0;
for (int i = 1; i <= power; i++)
{
result *= x;
}
return (result);
}
main()
{
double x;
int i;
cout << "Enter the Number: ";
cin >> x;
cout << "Enter the Power: ";
cin >> i;
cout << x << "Raise to power " << i << " is equal to " << raiseToPow(x , i);
}
答案 0 :(得分:0)
double x
是取幂x power 的基础。
该函数使用定义x power 是1乘以x次幂。因此,2 3 是1 * 2 * 2 * 2并且4 5 是1 * 4 * 4 * 4 * 4 * 4。因此double result
设置为1,然后for循环执行功率时间,每次将result
乘以x
并将其存储回result
。
答案 1 :(得分:0)
即使这是C ++,而不是C,逻辑也是一样的。 传入数字(x)及其指数(幂)。 x的值乘以&#39; power&#39;倍。 例如,如果你想知道2的幂增加到2的幂,你会将2,3传递给函数raiseToPow
声明
result*=x
与
相同 result = x*result.
因此,第一次通过循环时,结果将只是x的值(在本例中为2)。第二次循环,结果* = x会将x的值(即2)乘以结果中存储的值(现在也是2)。循环的第三个也是最后一个时间,结果* = x将乘以结果中存储的值的x倍(现在为4)。
2 ^ 3 = 8的值,这就是存储在变量结果中的值,因此从调用raiseToPow(2,3)返回值8。