diff --git a/src/main/java/Car.java b/src/main/java/Car.java new file mode 100644 index 000000000..57dce4e62 --- /dev/null +++ b/src/main/java/Car.java @@ -0,0 +1,21 @@ +public class Car { + private String name; + private double speed; + + public Car(String name, double speed) { + this.name = name; + this.speed = speed; + } + + public String getName() { + return name; + } + + public double getSpeed() { + return speed; + } + + public double calculateDistance(double hours) { + return speed * hours; + } +} \ No newline at end of file diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..7615cb6ef 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,47 @@ +import java.util.Scanner; public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + Scanner scanner = new Scanner(System.in); + Car[] cars = new Car[3]; + + for (int i = 0; i < 3; i++) { + String name; + while (true) { + System.out.print("Введите название автомобиля #" + (i + 1) + ": "); + name = scanner.nextLine().trim(); + + if (!name.isEmpty()) { + break; + } else { + System.out.println("Ошибка: название автомобиля не должно быть пустым. Попробуйте снова."); + } + } + + double speed; + while (true) { + System.out.print("Введите скорость автомобиля #" + (i + 1) + " (от 0 до 250): "); + String input = scanner.nextLine(); + + try { + speed = Double.parseDouble(input); + if (speed > 0 && speed <= 250) { + break; + } else { + System.out.println("Ошибка: скорость должна быть > 0 и <= 250. Попробуйте снова."); + } + } catch (NumberFormatException e) { + System.out.println("Ошибка: введено некорректное значение. Попробуйте снова."); + } + } + + cars[i] = new Car(name, speed); + } + + Race race = new Race(cars); + Car winner = race.determineWinner(); + System.out.println("Самая быстрая машина: " + winner.getName()); + + scanner.close(); } } \ 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..49f22a82e --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,19 @@ +public class Race { + private Car[] cars; + + public Race(Car[] cars) { + this.cars = cars; + } + + public Car determineWinner() { + Car winner = cars[0]; + + for (Car car : cars) { + if (car.calculateDistance(24) > winner.calculateDistance(24)) { + winner = car; + } + } + + return winner; + } +} \ No newline at end of file