forked from Yandex-Practicum/Java-Module-Project-YP
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMain.java
More file actions
88 lines (77 loc) · 3.34 KB
/
Main.java
File metadata and controls
88 lines (77 loc) · 3.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.NoSuchElementException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
ArrayList<Car> listOfCar = new ArrayList<>();
ArrayList<Car> winner = new ArrayList<>();
Race race;
try {
//заполняем автомобили
setCars(listOfCar, in);
//создаём гонку
race = new Race(listOfCar);
//гоняем
winner = race.letsRace();
//объявляем победителя(ей)
printWinner(winner);
} catch (Exception e){
System.out.println("К такому я не был готов");
} finally {
in.close();
}
}
public static void setCars(ArrayList<Car> listOfCars, Scanner in) {
int i = 1, speed;
String name;
System.out.println("Для запуска гонки потребуется заполнить параметры для 3-х автомобилей.\nЗначение скорости должно быть в диапазоне от 0 до 250.");
while (i < 4) {
//ввод названия авто
System.out.println("Введите название " + i + "-го автомобиля:");
while (true) {
name = in.nextLine();
if (!name.trim().isEmpty()) {
break;
} else {
System.out.println("Так не пойдёт, давайте попробуем ещё раз!");
System.out.println("Введите название " + i + "-го автомобиля:");
}
}
//ввод скорости
System.out.println("Отлично. Теперь введите скорость " + i + "-го автомобиля:");
while (true) {
if(in.hasNextInt()){
speed = in.nextInt();
in.nextLine();
if(speed >= 0 && speed <= 250){
break;
}
else {
System.out.println("Скорость вне диапазона. Попробуйте ещё раз");
System.out.println("Введите скорость " + i + "-го автомобиля:");
}
} else {
System.out.println("Так не пойдёт, давайте попробуем ещё раз!");
System.out.println("Введите скорость " + i + "-го автомобиля:");
in.next();
}
}
listOfCars.add(new Car(name, speed));
i++;
}
}
public static void printWinner(ArrayList<Car> winner){
if (winner.size() == 1){
System.out.println("Победителем становится: " + winner.getFirst());
}
else {
System.out.println("Победителями становятся: " + winner.size());
for (Car car : winner) {
System.out.println(car);
}
}
}
}