输入两个数a和b,求其最大公约数和最小公倍数
时间: 2023-05-19 22:02:31 浏览: 78
可以使用辗转相除法求解最大公约数,同时利用最大公约数求解最小公倍数。
以下是示例代码:
```python
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
# 求最大公约数
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)
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", lcm(a, b))
```
输入示例:
```
请输入第一个数:12
请输入第二个数:18
```
输出示例:
```
最大公约数为: 6
最小公倍数为: 36
```
相关问题
输入两个数a和b,用c语言求其最大公约数和最小公倍数
最大公约数可以使用辗转相除法求解,代码如下:
```c
#include <stdio.h>
int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
int main() {
int a, b;
printf("请输入两个数a和b:");
scanf("%d%d", &a, &b);
int g = gcd(a, b);
int l = a * b / g;
printf("最大公约数为:%d\n", g);
printf("最小公倍数为:%d\n", l);
return 0;
}
```
如果输入a=12,b=18,则输出结果为:
```
请输入两个数a和b:12 18
最大公约数为:6
最小公倍数为:36
```
注意:这里假设输入的a和b都是正整数。
输入两个数求其最大公约数和最小公倍数
最大公约数是指两个数中能够同时整除它们的最大正整数,最小公倍数是指两个数的公共倍数中最小的一个。
求最大公约数和最小公倍数的方法有很多种,其中比较常用的是辗转相除法和质因数分解法。
辗转相除法是指用较大的数除以较小的数,然后用余数去除较小的数,再用新的余数去除上一步的余数,直到余数为为止。此时,较小的数就是最大公约数,而最小公倍数可以用两个数的乘积除以最大公约数得到。
质因数分解法是指将两个数分别分解质因数,然后将它们的公共质因数乘起来得到最大公约数,将两个数的所有质因数乘起来得到最小公倍数。
例如,对于输入的两个数10和15,它们的最大公约数是5,最小公倍数是30。
相关推荐
![py](https://img-home.csdnimg.cn/images/20210720083646.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)