diff --git a/src/main/java/Car.java b/src/main/java/Car.java new file mode 100644 index 000000000..4b4a7e220 --- /dev/null +++ b/src/main/java/Car.java @@ -0,0 +1,19 @@ +public class Car { + String name; // наименование автомобиля + int speed; // скорость автомобиля + + // Конструктор класса "Автомобиль" + public Car(String name, int speed) { + this.name = name; + this.speed = speed; + } + public String getName() { + return name; + } + + // Метод для вычисления дистанции, которую автомобиль может проехать за 24 часа + public int calculationDistance() { + return speed * 24; // время (24 часа) * скорость (км/ч) + } +} + diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..24b1d69f1 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,54 @@ +import java.util.Scanner; public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + Scanner scanner = new Scanner(System.in); + + Race race = new Race(); // Создаем объект гонки + Car car; // Объявляем переменную для автомобиля + + // Запрашиваем данные для трех автомобилей + for (int i = 1; i <= 3; i++) { + System.out.println("Введите данные для автомобиля " + i + ":"); + + // Считываем название автомобиля с проверкой на пустое значение + String name; + while (true) { + System.out.print("Введите название автомобиля: "); + name = scanner.nextLine().trim(); // Убираем возможные пробелы в начале и в конце + if (!name.isEmpty()) { + break;// Если имя не пустое, выходим из цикла + } else { + System.out.println("Название не может быть пустым. Попробуйте снова"); + } + } + + // Считываем скорость автомобиля с проверкой + int speed; + while (true) { + System.out.print("Введите скорость автомобиля (0 < скорость <= 250): "); + + if (scanner.hasNextInt()) { // Проверка на введение числа + speed = scanner.nextInt(); + scanner.nextLine(); // Чтение лишнего символа новой строки + + if (speed> 0 && speed <= 250) { + break; // Выход из цикла, если скорость корректна + } else { + System.out.println("Неверное значение скорости. Попробуйте снова."); + } + } else { + System.out.println("Ввод некорректен! Введите целое число для скорости."); + scanner.nextLine(); + } + } + // Создаем объект автомобиля и определяем лидера + car = new Car(name, speed); + race.determineLeader(car); + } + + // Выводим название лидера гонки + System.out.println("Самая быстрая машина: " + race.getLeaderName()); } -} \ No newline at end of file +} + diff --git a/src/main/java/Race.java b/src/main/java/Race.java new file mode 100644 index 000000000..afc3f77ef --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,21 @@ +public class Race { + String currentLeaderName = ""; // имя текущего лидера гонки + + int leaderDistance = 0; // дистанция + + // Метод для определения нового лидера + public void determineLeader(Car car) { + int carDistance = car.calculationDistance(); + + + if (carDistance> leaderDistance) { // Проверяем, если новый автомобиль проедет больше, обновляем лидера + currentLeaderName = car.getName(); + leaderDistance = carDistance; + } + } + // Метод для получения имени лидера + public String getLeaderName() { + + return currentLeaderName; + } +}

AltStyle によって変換されたページ (->オリジナル) /