定义一个rational类。 包含有理数分数形式的分子numerator、分母denominator两个int成员变量。 按照实 际参数创建对象(不需考虑最简形式)。编写方法public int compareRationa(rational x)比较两个有理数的大小。 若第一个有理数小于第二个,返回-1;若相等返回0;若第一个有理数大于第二个,返回1;用户输入的两个有理数, 调用上述方法进行比较输出比较结果。
时间: 2024-02-03 20:14:27 浏览: 82
定义一个类能进行任两个整数加减乘除,有两个私有成员并显示加减乘除的结果。
4星 · 用户满意度95%
以下是一个实现该功能的rational类的示例代码:
```java
public class Rational {
private int numerator; // 分子
private int denominator; // 分母
public Rational(int numerator, int denominator) {
this.numerator = numerator;
this.denominator = denominator;
}
public int compareRational(Rational x) {
int left = this.numerator * x.denominator;
int right = x.numerator * this.denominator;
if (left < right) {
return -1;
} else if (left == right) {
return 0;
} else {
return 1;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个有理数的分子和分母,用空格隔开:");
int numerator1 = scanner.nextInt();
int denominator1 = scanner.nextInt();
Rational rational1 = new Rational(numerator1, denominator1);
System.out.print("请输入第二个有理数的分子和分母,用空格隔开:");
int numerator2 = scanner.nextInt();
int denominator2 = scanner.nextInt();
Rational rational2 = new Rational(numerator2, denominator2);
int result = rational1.compareRational(rational2);
if (result < 0) {
System.out.println("第一个有理数小于第二个有理数");
} else if (result > 0) {
System.out.println("第一个有理数大于第二个有理数");
} else {
System.out.println("两个有理数相等");
}
}
}
```
示例输出:
```
请输入第一个有理数的分子和分母,用空格隔开:1 2
请输入第二个有理数的分子和分母,用空格隔开:2 3
第一个有理数小于第二个有理数
```
阅读全文