From 6f35a6e7ba3cdd9bbf4370927cd5d8a729f43f88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?cherrevkoo=D1=8F?= Date: Mon, 29 Sep 2025 15:55:46 +0300 Subject: [PATCH] Initial commit --- src/main/java/Auto.java | 15 ++++++++++++ src/main/java/InputRacerData.java | 40 +++++++++++++++++++++++++++++++ src/main/java/Main.java | 11 ++++++++- src/main/java/Race.java | 21 ++++++++++++++++ 4 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 src/main/java/Auto.java create mode 100644 src/main/java/InputRacerData.java create mode 100644 src/main/java/Race.java diff --git a/src/main/java/Auto.java b/src/main/java/Auto.java new file mode 100644 index 000000000..ef6674a4e --- /dev/null +++ b/src/main/java/Auto.java @@ -0,0 +1,15 @@ +public class Auto { + String name; + int speed; + public Auto(String name, int speed) { + this.name = name; + this.speed = speed; + } + public String getName() { + return name; + } + public int getSpeed() { + return speed; + } +} + diff --git a/src/main/java/InputRacerData.java b/src/main/java/InputRacerData.java new file mode 100644 index 000000000..be254d42f --- /dev/null +++ b/src/main/java/InputRacerData.java @@ -0,0 +1,40 @@ +import java.util.Scanner; + +public class InputRacerData { + public static Auto inputRacerData(Scanner scanner) { + String inputName; + + while (true) { + System.out.println("Введите имя гонщика: "); + inputName = scanner.nextLine(); + + if (!inputName.isEmpty()) { + break; + } else { + System.out.println("Введите непустое имя"); + } + } + + int inputSpeed; + + while (true) { + System.out.println("Введите скорость гонщика: "); + + if (scanner.hasNextInt()) { + inputSpeed = scanner.nextInt(); + scanner.nextLine(); + + if (inputSpeed > 0 && inputSpeed < 250) { + break; + } else { + System.out.println("Введите значение в пределах от 0 до 250"); + } + + } else { + System.out.println("Введите корректное значение"); + scanner.nextLine(); + } + } + return new Auto(inputName, inputSpeed); + } +} diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..fed4e2b6e 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,15 @@ +import java.util.ArrayList; +import java.util.Scanner; public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + Scanner scanner = new Scanner(System.in); + ArrayList autos = new ArrayList<>(); + + for (int i = 0; i < 3; i++) { + autos.add(InputRacerData.inputRacerData(scanner)); + } + Race race = new Race(); + race.findLeader(autos); } } \ 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..ab1dbd968 --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,21 @@ +import java.util.ArrayList; + +public class Race { + String leader = ""; + int distance = 0; + int time = 24; + + public void findLeader(ArrayList autos) { + + for (Auto auto : autos) { + int distanceOfRacer = time * auto.getSpeed(); + + if (distanceOfRacer > distance) { + distance = distanceOfRacer; + leader = auto.getName(); + } + } + System.out.printf("Лидер гонки - %s, дистанция - %d км", leader, distance ); + } + +}