Jem*_*eal 2 c++ math loops exponent
我需要一些帮助.我想计算x给定的实数值a和正值整数x.
我的节目:
#include <iostream>
using namespace std;
int main()
{
int a, x;
cout << "Input a: ";
cin >> a;
cout << "Input x: ";
cin >> x;
for (int i=0; i<=x; i++)
a= a*a;
cout << "The answer is: " << a;
}
Run Code Online (Sandbox Code Playgroud)
看看这个循环:
for (int i=0; i<=x; i++)
a= a*a;
cout << "The answer is: " << a;
}
Run Code Online (Sandbox Code Playgroud)
每次你经历这个循环,你自己乘以一个.假设用户输入数字0.然后:
例如,如果a = 2且x = 4,则值将为2,4,16和256,这些值比您希望的大.
要解决这个问题,请尝试更改循环,以便您有一个辅助变量,最初设置为1,并保持乘以a.这样,您不会更改每次迭代乘以的值.
接下来,请注意您的循环运行了太多次.由于你循环到x并包含x,你的循环运行x + 1次,所以如果你想计算x,你将获得错误的值.尝试将其更改为完全循环x次.
最后,print语句在每次迭代时运行,因此您将看到所有中间值.更改代码,以便print语句在循环之外.
完成所有这些后,请查看该pow
功能.如果这是一项任务,您可能无法使用此功能,但这是解决此问题的最简单方法.
希望这可以帮助!