编写程序,求两个正整数的最大公约数和最小公倍数。
时间: 2024-05-15 08:19:16 浏览: 20
您可以使用以下代码来求两个正整数的最大公约数和最小公倍数:
```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(num1, "和", num2, "的最大公约数是:", gcd(num1, num2))
print(num1, "和", num2, "的最小公倍数是:", lcm(num1, num2))
```
运行结果:
```
请输入第一个正整数:12
请输入第二个正整数:18
12 和 18 的最大公约数是: 6
12 和 18 的最小公倍数是: 36
```
相关问题
求两个正整数最大公约数和最小公倍数c语言
求两个正整数的最大公约数和最小公倍数可以使用辗转相除法。具体思路是从两个数中选一个数,从这个数开始,逐步减一,当能够同时被两个数整除时,结束循环,即为最大公约数。最小公倍数等于两个数的乘积除以最大公约数。在C语言中,可以使用函数来实现这个过程,也可以在主函数中直接编写代码实现。如果使用函数,可以将求最大公约数和最小公倍数的过程分别封装成两个函数,然后在主函数中调用这两个函数即可。如果不使用函数,可以直接在主函数中编写代码实现。
编写函数求两个正整数的最大公约数和最小公倍数Python
可以使用辗转相除法求最大公约数,使用最大公约数和两个数的乘积求最小公倍数。
以下是Python代码:
```python
def gcd(a, b):
while b:
a, b = b, a % b
return a
def lcm(a, b):
return a * b // gcd(a, b)
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", lcm(a, b))
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)