【问题标题】:Help with POW function in C++C++中的POW函数帮助
【发布时间】:2023-04-08 21:06:01
【问题描述】:

pow 函数有问题。等式是A=P*((1+R)/T)^T 是“^”的幂。我将如何使用 pow 函数,我只看到 4 到 5 次方的示例,与我必须做的完全不同

【问题讨论】:

  • 你不能用((1+R)/T)替换4和T在你看到的那个例子中吗?
  • 我建议你看起来更努力一点 - 所以用户不会为你做功课
  • 第二...至少,首先不要告诉我们这是家庭作业。
  • Stack Overflow 是针对有关编程语言的有趣问题。这只是一个“请帮我支持我”的对话,这不是我们来这里的目的。请尝试使用聊天室或论坛。
  • @Mahnax:不,我们希望人们在他们的问题是关于家庭作业的情况下诚实。它有助于我们更快地结束问题。

标签: c++ math


【解决方案1】:

它只是A = pow((1+R)/T , T) * P;

【讨论】:

  • 确保所有数据类型都是doublefloat,否则你的基值会出现整数除法问题。
【解决方案2】:

C++函数std::pow可以这样使用:如果你写

std::pow(base, exponent)

函数计算base<sup>exponent</sup>。在你的情况下,因为你想计算

A = P * ((1 + R) / T) ^ T

你可以这样调用函数:

A = P * std::pow((1 + R) / T, T);

请注意,第二个参数不必是常数;它可以是任何你想要的值,甚至是你直到运行时才知道的值。

希望这会有所帮助!

【讨论】:

  • 如果你使用代码标签而不是反引号,你可以摆脱基数/指数中丑陋的两级效应(也可以在代码中使用其他标记)。我这样做是为了向您展示如何:-)
  • 致那些投反对票的人——你能解释一下这个答案有什么问题吗?我的印象是,这是一个写得很好且深思熟虑的答案,如果我能做些什么来澄清它,我很乐意进行适当的编辑。
  • 赞成,因为我同意模板,它很有用,但也因为我喜欢烦人的驾车投票者:-)
【解决方案3】:
P * pow((1+R)/T, T)

第二个参数是第一个参数的指数(幂)。

【讨论】:

    【解决方案4】:

    使用man pow查看使用情况

    A = P * pow((1 + R) / T, T)
    

    【讨论】:

      【解决方案5】:

      要么:

      A = P * pow ((1 + R) / T, T)
      

      或:

      A = pow (P * (1 + R) / T, T)
      

      取决于幂是否应包括乘以P

      我会怀疑前者,因为求幂在数学中往往具有更高的优先级 - 即,4x<sup>2</sup>4(x<sup>2</sup>),而不是 (4x)<sup>2</sup>

      【讨论】:

        猜你喜欢
        • 2014-05-09
        • 2012-06-02
        • 1970-01-01
        • 1970-01-01
        • 2011-08-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-29
        相关资源
        最近更新 更多