电源功能不正常

时间:2013-12-08 08:36:29

标签: c++

for (int i=0; i<30; i ++)
    {   a=pow(i,2);
       cout<<a<<endl;
    }

代码产生以下输出.. 0 1 4 9 16 24 36 49 64 81 99 120 等等 它将某些值的平方减少1 比如5,它产生24和10它产生99等等。

for (int i=0; i<30; i ++)
    {   
       cout<<pow(i,2);
    }

上面的代码工作正常。 请帮助我..当我在变量

的帮助下这样做时告诉我什么是错的

3 个答案:

答案 0 :(得分:3)

虽然pow具有int指数的重载,但是double可以完全表示整数,pow不保证特殊情况整数幂。它可能只是使用对数或其他来计算它们。因此,可以近似计算整数幂。

答案 1 :(得分:1)

因为取决于实现,即使使用整体功率也可以产生近似结果。它总是产生非整数幂的近似结果。

答案 2 :(得分:0)

您可以使用以下格式获得所需的输出:

for (int i=0; i<30; i ++)
{  
  floor(pow(l, ++x) + .5);
   cout<<a<<endl;
}