diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..a9f29209d 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,79 @@ +import java.util.ArrayList; +import java.util.Scanner; public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + Scanner input = new Scanner(System.in); + ArrayList cars = new ArrayList<>(); + Race race = new Race(); + + for (int i = 0; i < 3; i++) { + System.out.println("Введите название " + (i + 1) + "-го автомобиля: "); + String name = input.nextLine(); + + boolean nameExists = false; + for (Car car : cars) { + if (car != null && car.name.equalsIgnoreCase(name)) { + nameExists = true; + break; + } + } + + if (!name.isEmpty() && !nameExists) { + int speed; + while (true) { + System.out.println("Введите скорость " + (i + 1) + "-го автомобиля: "); + if (input.hasNextInt()) { + speed = input.nextInt(); + input.nextLine(); + + if (speed >= 0 && speed <= 250) { + break; + } else { + System.out.println("Скорость должна быть от 0 до 250. Попробуйте еще раз."); + } + } else { + System.out.println("Ошибка: введите целое число для скорости."); + input.nextLine(); + } + } + Car newCar = new Car(name, speed); + cars.add(newCar); + race.determineNewLeader(newCar); + } else { + System.out.println("Название автомобиля не может быть пустым или дублироваться. Попробуйте еще раз."); + i--; + } + } + + System.out.println("\nСписок добавленных автомобилей:"); + for (Car car : cars) { + System.out.println("Название: " + car.name + ", Скорость: " + car.speed); + } + + System.out.println("\nПобедитель гонки: " + race.winner); + } +} + +class Car { + String name; + int speed; + + public Car(String name, int speed) { + this.name = name; + this.speed = speed; + } +} + +class Race { + String winner = ""; + int maxDistance = 0; + + public void determineNewLeader(Car newCar) { + int newCarDistance = 24 * newCar.speed; + if (newCarDistance > this.maxDistance) { + this.maxDistance = newCarDistance; + this.winner = newCar.name; + } } -} \ No newline at end of file +}