python写一个类GCM,该类有两个实例变量a和b,方法func()用来返回a和b的最大公约数;然后编写一个该类的子类LCM,要求子类重写方法func()返回a和b的最小公倍数,要求在重写的方法的方法体中调用父类方法返回a和b的最大公约数m,然后将乘积(a*b)/m返回 补充代码,并求15和20的最大公约数和最小公倍数
时间: 2024-02-12 13:08:16 浏览: 5
python求最大公约数和最小公倍数的简单方法
5星 · 资源好评率100%
以下是实现要求的代码:
```python
class GCM:
def __init__(self, a, b):
self.a = a
self.b = b
def func(self):
x = self.a
y = self.b
while y != 0:
x, y = y, x % y
return x
class LCM(GCM):
def func(self):
m = super().func()
return (self.a * self.b) // m
# 测试代码
gcm = GCM(15, 20)
lcm = LCM(15, 20)
print("15和20的最大公约数为:", gcm.func())
print("15和20的最小公倍数为:", lcm.func())
```
输出结果为:
```
15和20的最大公约数为: 5
15和20的最小公倍数为: 60
```
阅读全文