Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 42 additions & 2 deletions src/main/java/Main.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,46 @@
import java.util.Scanner;

import entity.Car;

public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");

Scanner scanner = new Scanner(System.in);

System.out.println("Приветствуем на гонке «24 часа Ле-Мана»!");

for (int i = 0; i < 3; i++) {

String name = "";
int speed = 0;

//Проверка введённого названия машины
while (name.isBlank()) {
System.out.printf("Введите название машины №%d:%n", i + 1);
name = scanner.nextLine();
if (name.isBlank()) {
System.out.println("Пустое название");
}
}

//Проверка введённой скорости
while (speed <= 0 || speed > 250) {

System.out.printf("Введите скорость машины №%d:%n", i + 1);
try {
speed = Integer.parseInt(scanner.nextLine());
} catch (Exception e) {
speed = 0;
}
if (speed <= 0 || speed > 250)
System.out.println("Неправильная скорость");
}

//Ввод расстояния и запись победителя
Race.chooseWinner(new Car(name, speed));
}

//Объявление победителя
Race.declareWinner();
}
}
}
24 changes: 24 additions & 0 deletions src/main/java/Race.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import entity.Car;

public class Race {

private static int maxDistance = 0;
private static String winner = "";
Comment on lines +5 to +6

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Эти поля можно сделать final


//Проверка расстояний и запись победителя. Если рекорд не побит победитель не меняется

public static void chooseWinner(Car car) {

int currentDistance = car.getSpeed() * 24;

if (maxDistance < currentDistance) {
maxDistance = currentDistance;
winner = car.getName();
}
}

//Объявление победителя
public static void declareWinner() {
System.out.println("Самая быстрая машина: " + winner);
}
}
19 changes: 19 additions & 0 deletions src/main/java/entity/Car.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package entity;

public class Car {
private final String name;
private final int speed;

public Car(String name, int speed) {
this.name = name;
this.speed = speed;
}

public int getSpeed() {
return speed;
}

public String getName() {
return name;
}
}