编写实现求两个数的最大公约数的函数fact,通过键盘输入两个数,打印输出最大公约数
时间: 2024-02-04 11:36:46 浏览: 28
以下是求两个数的最大公约数的Python代码实现:
```python
def fact(a, b):
if a < b:
a, b = b, a
while b != 0:
temp = a % b
a = b
b = temp
return a
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第二个数:"))
print("最大公约数为:", fact(num1, num2))
```
首先定义了一个函数fact,该函数接收两个参数a和b。在函数内部,我们通过比较a和b的大小,将较大的数赋值给a,较小的数赋值给b。然后使用辗转相除法求出a和b的最大公约数。最后返回最大公约数的值。
在主程序中,我们通过input函数从键盘输入了两个整数num1和num2,并调用fact函数求出它们的最大公约数,并通过print函数将结果输出到屏幕上。
相关问题
输入两个正整数m和n编写自定义函数,求两个数最大公约数,c语言
在C语言中,可以使用欧几里得算法来求两个正整数的最大公约数。以下是一个示例代码:
```c
#include <stdio.h>
// 函数声明
int gcd(int m, int n);
int main() {
int m, n;
printf("请输入两个正整数:");
scanf("%d %d", &m, &n);
int result = gcd(m, n);
printf("最大公约数为:%d\n", result);
return 0;
}
// 函数定义
int gcd(int m, int n) {
if (n == 0) {
return m;
} else {
return gcd(n, m % n);
}
}
```
这段代码中,我们定义了一个名为`gcd`的函数,它接受两个正整数`m`和`n`作为参数,并返回它们的最大公约数。在`main`函数中,我们首先从用户输入获取两个正整数,然后调用`gcd`函数计算最大公约数,并将结果打印输出。
python编写一个函数 从键盘输入两个数 求最大公约数和最小公倍数
可以使用辗转相除法来求最大公约数,最小公倍数可以通过最大公约数求得。
代码如下:
```python
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
def lcm(a, b):
return a * b // gcd(a, b)
if __name__ == '__main__':
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", lcm(a, b))
```
输入两个数后,程序会输出它们的最大公约数和最小公倍数。