用java编写两个类a和b,A创建的对象可以计算两个正整数的最大公约数,B 创建的对象可以计算两个数的最小公倍数。要求:B 类中有一个成员变量是用A类声明对象的。
时间: 2024-05-08 08:21:03 浏览: 81
最大公约数和最小公倍
以下是Java代码实现:
```
public class A {
public int getGCD(int a, int b) {
if (b == 0) {
return a;
} else {
return getGCD(b, a % b);
}
}
}
public class B {
private A a;
public B(A a) {
this.a = a;
}
public int getLCM(int a, int b) {
return a * b / this.a.getGCD(a, b);
}
}
```
在类A中,我们定义了一个方法getGCD,它使用欧几里得算法来计算两个正整数的最大公约数。在类B中,我们定义了一个成员变量a,它是用A类声明的对象。在构造函数中,我们将A类的对象传递给B类的构造函数。然后,我们定义了一个方法getLCM,它使用类A中的getGCD方法来计算两个数的最小公倍数。
阅读全文