From d49d0aa9e5c6ac2fffd0aa76a650f266a3a55394 Mon Sep 17 00:00:00 2001 From: FaaLiK Date: Sun, 26 Oct 2025 16:28:04 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=A0=202?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- src/main/java/Car.java | 18 ++++++++++++++++ src/main/java/Main.java | 48 +++++++++++++++++++++++++++++++++++++---- src/main/java/Race.java | 15 +++++++++++++ 4 files changed, 78 insertions(+), 5 deletions(-) create mode 100644 src/main/java/Car.java create mode 100644 src/main/java/Race.java diff --git a/README.md b/README.md index 63be1bfe0..058c5fb04 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -# Пустой репозиторий для работы с Java кодом в Android Studio +24 часа Ле-Мана diff --git a/src/main/java/Car.java b/src/main/java/Car.java new file mode 100644 index 000000000..6328749db --- /dev/null +++ b/src/main/java/Car.java @@ -0,0 +1,18 @@ +public class Car { + private String name; + private int speed; + + public Car(String name, int speed) { + this.name = name; + this.speed = speed; + } + public String getName() { + return name; + } + public int getSpeed() { + return speed; + } + public int mileage() { + return 24 * speed; + } +} \ No newline at end of file diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..6cc546561 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,46 @@ - +import java.util.Scanner; public class Main { - public static void main(String[] args) { - System.out.println("Hello world!"); + public static void main(String[] args){ + System.out.println("24 часа Ле-Мана"); + Scanner scanner = new Scanner(System.in); + Car[] cars = new Car[3]; + Race race = new Race(); + + for (int i = 0; i < cars.length; i++) { + System.out.println("Автомобиль " + (i + 1) + ":"); + + String name; + while (true) { + System.out.println("Введите название автомобиля: "); + name = scanner.nextLine().trim(); + if(!name.isEmpty()){ + break; + } + System.out.println("Ошибка: название автомобиля не может быть пустым!"); + } + + int speed = 0; + while (true) { + System.out.println("Введите скорость автомобиля (1-250 км/ч): "); + if (scanner.hasNextInt()) { + speed = scanner.nextInt(); + scanner.nextLine(); + if (speed > 0 && speed <= 250) { + break; + } else { + System.out.println("Скорость должна быть от 1 до 250."); + } + } else { + System.out.println("Введите целое число"); + scanner.next(); + } + } + + cars[i] = new Car(name, speed); } -} \ No newline at end of file + + Car winner = race.raceWinner(cars); + System.out.println("Самая быстрая машина: " + winner.getName()); +} +} + diff --git a/src/main/java/Race.java b/src/main/java/Race.java new file mode 100644 index 000000000..c8b5be8e2 --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,15 @@ +public class Race { + public Car raceWinner(Car[] cars) { + Car winner = cars[0]; + int maxDistance = cars[0].mileage(); + for (int i = 1; i < cars.length; i++) { + int currentDistance = cars[i].mileage(); + if (currentDistance > maxDistance) { + maxDistance = currentDistance; + winner = cars[i]; + } + } + return winner; + } +} +