请把前面编写的求最大公约数(maxYue)、最小公倍数(minBei)、是否素数(isSu)等函数重新组织成myMath模块。 编写测试程序(test.py)导入myMath模块,请用户输入2个数字,判断分别是否是素数,并求2个数字的最大公约数和最小公倍数。
时间: 2023-12-14 09:37:26 浏览: 79
myMath.py代码如下:
```python
import math
def maxYue(a, b):
return math.gcd(a, b)
def minBei(a, b):
return a * b // math.gcd(a, b)
def isSu(num):
if num <= 1:
return False
for i in range(2, int(math.sqrt(num)) + 1):
if num % i == 0:
return False
return True
```
test.py代码如下:
```python
import myMath
a = int(input("请输入第一个数字:"))
b = int(input("请输入第二个数字:"))
if myMath.isSu(a):
print(a, "是素数")
else:
print(a, "不是素数")
if myMath.isSu(b):
print(b, "是素数")
else:
print(b, "不是素数")
print(a, "和", b, "的最大公约数是:", myMath.maxYue(a, b))
print(a, "和", b, "的最小公倍数是:", myMath.minBei(a, b))
```
相关问题
定义2个函数,分别求两个数的最大公约数(maxYue),最小公倍数(minBei) 然后接收用户输入的2个数,输出对应的最大公约数和最小公倍数
好的,下面是使用 Python 编写的程序,可以定义两个函数 `maxYue()` 和 `minBei()`,分别用于计算两个数的最大公约数和最小公倍数。然后,读取用户输入的两个数,调用这两个函数计算最大公约数和最小公倍数,并输出结果。
```python
# 定义函数,求两个数的最大公约数
def maxYue(a, b):
while b:
a, b = b, a % b
return a
# 定义函数,求两个数的最小公倍数
def minBei(a, b):
return a * b // maxYue(a, b)
# 读取两个数
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
# 计算最大公约数和最小公倍数
yue = maxYue(a, b)
bei = minBei(a, b)
# 输出结果
print("{}和{}的最大公约数为:{}".format(a, b, yue))
print("{}和{}的最小公倍数为:{}".format(a, b, bei))
```
首先,我们定义了两个函数 `maxYue()` 和 `minBei()`,分别用于计算两个数的最大公约数和最小公倍数。其中,`maxYue()` 函数使用辗转相除法求解最大公约数,`minBei()` 函数通过两个数的乘积除以最大公约数来计算最小公倍数。
然后,我们读取用户输入的两个数,并调用 `maxYue()` 和 `minBei()` 函数计算最大公约数和最小公倍数。最后,输出结果即可。
例如,如果用户输入了 24 和 36,程序会输出:
```
24和36的最大公约数为:12
24和36的最小公倍数为:72
```
希望对你有帮助!
Python定义2个函数,分别求两个数的最大公约数(maxYue),最小公倍数(minBei) 然后接收用户输入的2个数,输出对应的最大公约数和最小公倍数
可以使用以下代码实现:
```python
# 定义求最大公约数的函数
def maxYue(a, b):
if b == 0:
return a
return maxYue(b, a % b)
# 定义求最小公倍数的函数
def minBei(a, b):
return a * b // maxYue(a, b)
# 接收用户输入的两个数
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第二个数:"))
# 输出最大公约数和最小公倍数
print("最大公约数为:", maxYue(num1, num2))
print("最小公倍数为:", minBei(num1, num2))
```
运行结果:
```
请输入第一个数:8
请输入第二个数:12
最大公约数为: 4
最小公倍数为: 24
```
阅读全文