21xrx.com
2024-12-22 20:35:26 Sunday
登录
文章检索 我的文章 写文章
C++编写两个函数,分别求最大公约数和最小公倍数
2023-07-10 01:53:54 深夜i     --     --
C++ 最大公约数 最小公倍数 两个函数

C++是一种高级编程语言,被广泛应用于软件开发和计算机科学。在C++中,我们可以使用函数来执行各种数学计算。本文将介绍如何使用C++编写两个函数——求最大公约数和最小公倍数。

求最大公约数:

在数学中,最大公约数是指两个或多个整数共有的约数中最大的那个。下面是使用C++编写求最大公约数的函数:


int gcd(int a, int b) {

  if (b == 0)

    return a;

  

  else {

    return gcd(b, a % b);

  }

}

在上面的代码中,我们使用递归计算最大公约数,直到b等于零为止。在每一轮递归中,我们取a除以b的余数,然后将b和余数传递给下一轮递归。最后,当b等于零时,我们就可以返回a。

现在,我们来看看如何使用上面的函数来计算最大公约数。


int main() {

  int a = 20, b = 16;

  int result = gcd(a, b);

  cout << "最大公约数是:" << result << endl;

  return 0;

}

上述代码中,我们首先定义了两个整数变量a和b,然后调用函数gcd,将a和b作为参数传递给它。该函数计算并返回a和b的最大公约数。最后,我们将结果打印到控制台上。

求最小公倍数:

最小公倍数是指两个或多个数公有的倍数中最小的一个数。现在,我们看看如何使用C++编写求最小公倍数的函数。


int lcm(int a, int b) {

  return a * b / gcd(a, b);

}

上面的代码使用之前定义的求最大公约数的函数来计算最小公倍数。

现在,我们来看看如何使用上面的函数来计算最小公倍数。


int main() {

  int a = 20, b = 16;

  int result = lcm(a, b);

  cout << "最小公倍数是:" << result << endl;

  return 0;

}

上述代码中,我们首先定义了两个整数变量a和b,然后调用函数lcm,将a和b作为参数传递给它。该函数计算并返回a和b的最小公倍数。最后,我们将结果打印到控制台上。

总结:

本文介绍了如何使用C++编写求最大公约数和最小公倍数的函数。这两个函数都非常简单且高效,可供在实际开发中使用。其中,求最大公约数的函数使用了递归来实现,而求最小公倍数的函数则先调用之前定义过的求最大公约数的函数,再用a和b的乘积除以最大公约数来获得最小公倍数。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复