Repository navigation
Expand file tree
/
Copy pathMain.java
More file actions
66 lines (49 loc) · 1.73 KB
/
Copy pathMain.java
File metadata and controls
66 lines (49 loc) · 1.73 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
import java.util.Scanner;
public class Main {
final static int minSpeed = 0;
final static int maxSpeed = 250;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Race race = new Race();
for (int i = 1; i <= 3; i++) {
String name = getName(scanner, i);
int speed = getSpeed(scanner, i);
Car car = new Car(name, speed);
race.setCurrentWinner(car);
}
System.out.println("Самая быстрая машина: " + race.getWinner());
scanner.close();
}
public static String getName(Scanner scanner, int carNumber) {
String name;
while (true) {
System.out.printf("Название машины %d:\n", carNumber);
name = scanner.nextLine().trim();
if (!name.isEmpty()) {
break;
} else {
System.out.println("Неправильное название\n");
}
}
return name;
}
public static int getSpeed(Scanner scanner, int carNumber) {
int speed;
while (true) {
System.out.printf("Скорость машины %d:\n", carNumber);
if (scanner.hasNextInt()) {
speed = scanner.nextInt();
if (speed > minSpeed && speed <= maxSpeed) {
break;
} else {
System.out.println("Неправильная скорость\n");
}
} else {
scanner.next();
System.out.println("Неправильная скорость\n");
}
}
scanner.nextLine();
return speed;
}
}