Итак, нам нужно создать класс Rational, который выполняет следующие действия. Создайте проект на Java, который включает класс Rational. Класс представляет собой Rational numbers. Он должен иметь только 2 поля num и denom. Он должен иметь следующие общедоступные методы (и любые другие частные методы):Рациональный класс для java не может запустить программу
- Конструктор, который принимает значение num и denom (в указанном порядке) в качестве начальных значений поля. Если denom равно 0, установите число 0/1.
- аксессор для NUM (GetNum)
- аксессор для DENOM (getDenom)
- Метод ToString, который возвращает строку вида «Num/DENOM» (без пробелов), где Num и DENOM имеют сохраненные значения
- Метод добавления, который принимает Rational-номер r и возвращает Rational-число, которое является результатом добавления r к этому Rational-числу. Он не должен менять это рациональное число.
- (Дополнительный кредит - 2 балла) Метод уменьшения без аргументов, который уменьшает это Rational до самой низкой формы.
У меня есть код, который я сделал в Intellij IDEA, но это не позволит мне запустить программу. Я знаю, что я получаю ошибки для большинства вещей, но я считаю, что это просто потому, что я не помещаю что-то в нужное место или не оставляю что-то. Это то, что у меня есть до сих пор.
import java.util.Scanner;
public class Rational {
private int num;
private int den; //fields
static Scanner userInput = new Scanner(System.in);
public static void main(String[] args) {
System.out.println("")
public Rational(int n, int d){
num = n;
den = d;
if (d == 0) {
num = 0;
den = 1;
System.out.println("Denominator is 0. Enter a number other than 0 next time.");
}//close if
int g = gcd(num, den);
num = n/g;
den = d/g;
}//close Rational
public String toString() {
if (den == 1) {
return num + "";
} else {
return num + "/" + den;
}
}//close toString
private Rational add(Rational r) {
int newNum = (this.num * r.den) + (r.num * this.den);
int newDen = r.den * this.den;
return new Rational(newNum, newDen);
}//close add
private static int gcd(int m, int n) {
if (0 == n) {
return m;
} else {
return gcd(n, m % n);
}//close else
}//close gcd
}//close main
}//close class
Что означает «не позволит мне запустить программу»? Что происходит при запуске? –
Почему вы не можете просто прочитать сообщение об ошибке? 'file.java:12: error: ';' ожидаемый System.out.println ("") ' Довольно очевидно, почему это не удается. –
@SoraweePorncharoenwase Где вы нашли сообщение об ошибке? Я ничего не вижу на этом посту. В любом случае, спасибо за информацию. –