c++ - 如何在 while 内执行 pow 函数? C++

标签 c++ while-loop

这是我必须做的问题(仅供引用):编写一个程序,从用户输入 2 个整数,然后计算第一个整数的第二个幂,然后输出结果。输入、计算和输出应该在三个独立的子程序/函数中。您必须使用 WHILE 循环计算幂,并将第一个数字乘以所需的次数。仅对于此作业,您可以使用全局变量在函数之间移动信息。 这是我的代码:

#include <iostream>
#include <cmath>
using namespace std;

double a, b, ans;


int main()
{
    cout << "Please enter two whole numbers: ";
    cin >> a >> b;
    cout << conclusion() << calc();

    system("pause");
    return 0;
}

int calc()
{
    double ans = pow(a, b);
    return 0;
}

int conclusion()
{
    cout << a << " To the power of " << b
         << " is " << ans;
    return 0;
}

这就是我遇到的问题,我上在线类(class)。这个家伙就像,“这是一个问题,弄清楚然后去做。”我想这很好,但是当出现这样的事情时,很难找到某些教程和问题。不管怎样,我把我的基本代码记下来了。现在我需要一个 while 循环,但不知道这意味着什么:使用 WHILE 循环计算幂并将第一个数字乘以所需的次数。 我想我可以做一段时间然后做

double ans = pow(a, b);

但显然不是这样。这就是我的章节教给我的,但不久之后你需要为此做所有这些额外的事情。我问过一个同学,她说她也过得很辛苦,她给我的例子是:

int a = 0;

int b =  0;

int c = 1;

cin >> a;

cin >> b;

int powerOp(int a, int b, int c)
{

while (b > 0)
          {
               c = c * a;

               b--;
          }
               cout  <<  c;
               return c;
}

我几乎整天都在工作,无法弄清楚这一点。我不明白为什么我们需要分解并设置 int = 1。我认为它可能只是

double ans = pow(a, b); //a and b being the 2 numbers the user inputs

最佳答案

这很简单,假设您有 2^3。你我都同意这和做 2x2x2 是一样的。您将第一个数字 A 乘以本身 B(您的第二个数字)次。现在对于你的循环,你想要的是你的第二个数字服务器作为你的计数器和循环退出条件。像这样

double YourPowerFunction(int a, int b)
{
    int counter = 0;
    double result = 1;

    while (counter < b)
    {
        counter++:
        result = result * a;
    }
    return result;
}

关于c++ - 如何在 while 内执行 pow 函数? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46700813/

相关文章:

c++ - 有效地从未排序的数组中获取前 50 个最高数字

java - 方法打印出错误的百分比整数

java - 如何将文件中的数字列表放入数组并返回数组

java - 如果文件存在,如何创建备份文件

c++ - LoadFrame (MFC) 仅在澳大利亚失败

c++ - OpenCV 3.4.3 中对 `cv::String::deallocate()' 错误的 undefined reference

c++ - 具有 union 返回类型的函数调用

c++ - TensorFlow 中的目标节点和获取节点有什么区别?

c - 如何跨多行、空格等读取用户输入?

c++ - 字符5:错误:控件可能到达非空函数的结尾