用函数实现求两正整数的最大公约数的功能,并在主函数中调用该函数求两正整数的最小公倍数
时间: 2024-05-09 14:19:23 浏览: 48
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
def lcm(a, b):
return a * b // gcd(a, b)
num1 = int(input("请输入第一个正整数:"))
num2 = int(input("请输入第二个正整数:"))
print("最大公约数为:", gcd(num1, num2))
print("最小公倍数为:", lcm(num1, num2))
```
相关问题
用函数实现求两正整数的最大公约数的功能,并在主函数中调用该函数求出两正整数的最小公倍数。
可以使用辗转相除法来实现,即用较大的数除以较小的数,如果余数为0,那么较小的数即为最大公约数;如果余数不为0,则用余数去除较小的数,一直循环,直到余数为0时,较小的数即为最大公约数。最小公倍数是两数的乘积除以最大公约数。
编写函数求两个正整数的最大公约数,并在main主函数中调用该函数求输入的两个整数的最大公约数和最小公倍数。
以下是一个求两个正整数最大公约数和最小公倍数的函数及其在main函数中的调用示例:
```c++
#include <iostream>
using namespace std;
// 求两个正整数的最大公约数
int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
// 求两个正整数的最小公倍数
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
int main() {
int a, b;
cout << "请输入两个正整数:";
cin >> a >> b;
cout << "它们的最大公约数是:" << gcd(a, b) << endl;
cout << "它们的最小公倍数是:" << lcm(a, b) << endl;
return 0;
}
```
运行结果:
```
请输入两个正整数:12 18
它们的最大公约数是:6
它们的最小公倍数是:36
```
阅读全文