import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static final int CAR_MIN_SPEED_KMH = 0;
public static final int CAR_MAX_SPEED_KMH = 250;
public static final int MAX_CARS_IN_RACE = 3;
public static String resultMessageTemplate = "Ð¡Ð°Ð¼Ð°Ñ Ð±ÑÑÑÑÐ°Ñ Ð¼Ð°Ñина: %s.";
public static String addNewCarMessageTemplate = "ÐведиÑе даннÑе авÑÐ¾Ð¼Ð¾Ð±Ð¸Ð»Ñ N%d";
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ArrayList carsInRace = new ArrayList<>();
System.out.println("ÐведиÑе даннÑе авÑомобилей ÑÑавÑÑвÑÑÑиÑ
в гонке.");
for(int i = 0; i < MAX_CARS_IN_RACE; i++) {
System.out.println(String.format(addNewCarMessageTemplate, i + 1));
System.out.print("ÐмÑ: ");
String carName = scanner.next();
int carSpeed;
while (true) {
System.out.print("СкоÑоÑÑÑ (км/Ñ): ");
if (!scanner.hasNextInt()) {
System.out.println("СкоÑоÑÑÑ - ÑелоÑиÑÐ»ÐµÐ½Ð½Ð°Ñ Ð²ÐµÐ»Ð¸Ñина!");
scanner.next(); //Dummy read to clear input
} else {
carSpeed = scanner.nextInt();
if (carSpeed <= CAR_MIN_SPEED_KMH) {
System.out.println("СкоÑоÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ð±Ð¾Ð»ÑÑе " + CAR_MIN_SPEED_KMH);
} else if (carSpeed > CAR_MAX_SPEED_KMH) {
System.out.println("СкоÑоÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ð¼ÐµÐ½ÑÑе или Ñавна " + CAR_MAX_SPEED_KMH);
} else {
break;
}
}
}
carsInRace.add(new Car(carName,carSpeed));
}
Race race = new Race(carsInRace);
Car carWinner = race.getRaceWinner();
if (carWinner != null) {
System.out.println(String.format(resultMessageTemplate, carWinner.name));
} else {
System.out.println("Fail. Something is going wrong.");
}
}
}