diff --git a/settings.gradle b/settings.gradle index 716abf25..be110bf6 100644 --- a/settings.gradle +++ b/settings.gradle @@ -12,4 +12,4 @@ dependencyResolutionManagement { mavenCentral() } } -rootProject.name = "BillCalculator" +rootProject.name = "Java-Module-Project" diff --git a/src/main/java/Car.java b/src/main/java/Car.java new file mode 100644 index 00000000..d237b03e --- /dev/null +++ b/src/main/java/Car.java @@ -0,0 +1,36 @@ +public class Car { + + private String name; + private double speed; + + public Car(String name, double speed) { + this.name = name; + this.speed = speed; + if (!isCorrectSpeed()) this.speed = -1; + } + + public boolean isCorrectSpeed() { + if (speed <= 0 || speed > 250) return false; + return true; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public double getSpeed() { + return speed; + } + + public void setSpeed(double speed) { + this.speed = speed; + } + + public double getDistance() { + return 24 * speed; + } +} \ No newline at end of file diff --git a/src/main/java/Main.java b/src/main/java/Main.java index 964dbb0b..ab6a142d 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,31 @@ +import java.io.UnsupportedEncodingException; +import java.util.Scanner; + public class Main { - public static void main(String[] args) { - // ваш код начнется здесь + public static void main(String[] args) throws UnsupportedEncodingException { + Scanner scanner = new Scanner(System.in); + Race race = new Race(); + String name = "default"; + double speed = -1; + Car car = new Car(name, speed); + for (int i = 0; i < 3; i++) { + System.out.println("Название автомобиля " + (i + 1) + ":"); + name = scanner.next(); + do { + System.out.println("Скорость автомобиля " + (i + 1) + ":"); + String speedStr = scanner.next(); + try { + speed = Double.parseDouble(speedStr); + } catch (Exception e) { + speed = -1; + } + car = new Car(name, speed); + if (!car.isCorrectSpeed()) System.out.println("Неправильная скорость!"); + } while (!car.isCorrectSpeed()); + race.addCar(car); + } + Car winner = race.getWinner(); + System.out.println("Самый быстрый автомобиль -> " + winner.getName()); } -} +} \ No newline at end of file diff --git a/src/main/java/Race.java b/src/main/java/Race.java new file mode 100644 index 00000000..b6219850 --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,23 @@ +import java.util.ArrayList; +import java.util.List; + +public class Race { + private List cars = new ArrayList<>(); + + public Race() { + } + + public void addCar(Car car) { + cars.add(car); + } + + public Car getWinner() { + if (cars.isEmpty()) return null; + Car winner = cars.get(0); + for (Car car : cars) { + if (car.getDistance() > winner.getDistance()) + winner = car; + } + return winner; + } +} \ No newline at end of file