import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("ÐобÑо пожаловаÑÑ Ð½Ð° Ð³Ð¾Ð½ÐºÑ \"«24 ÑаÑа Ðе-Ðана»");
ArrayList racersList = new ArrayList<>();
for (int i = 1; i <= 3; i++){
System.out.print("Ðведи Ð¸Ð¼Ñ Ð³Ð¾Ð½Ñика â" + i + ": ");
String userInputName = scanner.nextLine();
while (checkName(userInputName)){
System.out.print("ÐÑибка! ÐÐ¼Ñ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑÑÑÑм: ");
userInputName = scanner.nextLine();
}
// не могла никак пÑидÑмаÑÑ, как добавиÑÑ Ð¿ÑовеÑÐºÑ Ð½Ð° пÑÑÑÑÑ ÑкоÑоÑÑÑ
// нейÑонка пÑедложила ÑеÑез Ñикл while Ñ try-catch,
// полÑÑилоÑÑ Ð´Ð»Ð¸Ð½Ð¾Ð²Ð°Ñо, поÑÑÐ¾Ð¼Ñ ÑеÑила вÑÑ Ð¿ÑовеÑÐºÑ ÑкоÑоÑÑи вÑнеÑÑи в оÑделÑнÑй меÑод checkSpeed
int userInputSpeed = checkSpeed(scanner, i);
racersList.add(new Racer(userInputName, userInputSpeed));
System.out.println("ÐонÑик â" + i + " Ñоздан: " + userInputName + ", ÑкоÑоÑÑÑ(км/Ñ): " + userInputSpeed);
}
System.out.print("\nСпиÑок гонÑиков: ");
for (Racer racer : racersList) {
System.out.print(racer.name + " ");
}
Winner winner = new Winner(racersList);
System.out.println("\n\nСпÑÑÑÑ 24 ÑаÑа...\n");
System.out.println("РпобедиÑелем ÑÑановиÑÑÑ: гонÑик " + winner.getRacer().name + " !!!");
System.out.println("Ðа 24 ÑаÑа он пÑеодолел: " + winner.getDistance());
}
public static boolean checkName(String name){
return name.isEmpty();
}
public static int checkSpeed(Scanner scanner, int number){
while (true) {
System.out.print("Ðведи ÑкоÑоÑÑÑ Ð³Ð¾Ð½Ñика â" + number + " (км/Ñ): ");
String input = scanner.nextLine(); //пÑиÑлоÑÑ Ð´ÐµÐ»Ð°ÑÑ ÑÑÑоковÑй ввод, ÑÑÐ¾Ð±Ñ Ð¿ÑовеÑиÑÑ Ð½Ð° пÑÑÑÑÑ ÑÑÑокÑ
// ÐÑовеÑÑем, ÑÑо ÑÑÑока не пÑÑÑаÑ
if (input.isEmpty()) {
System.out.println("ÐÑибка! СкоÑоÑÑÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑÑÑой.");
continue;
}
try {
int userInputSpeed = Integer.parseInt(input); // ÐÑевÑаÑаем ÑÑÑÐ¾ÐºÑ Ð² ÑиÑло
if (userInputSpeed > 0 && userInputSpeed <= 250) {
return userInputSpeed;
}
System.out.println("СкоÑоÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ > 0 и <= 250");
} catch (NumberFormatException e) {
System.out.print("ÐÑибка! СкоÑоÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ ÑиÑлом:");
}
}
}
// public static Racer getWinner(ArrayList racers){
// Racer winner = racers.getFirst(); // ÑнаÑала запиÑем победиÑелем пеÑвого гонÑика
// for (Racer racer : racers) {
// if (racer.speed * 24 > winner.speed * 24) {
// winner = racer;
// }
// }
// return winner;
// }
}