diff --git a/src/main/java/Car.java b/src/main/java/Car.java new file mode 100644 index 00000000..b42c185f --- /dev/null +++ b/src/main/java/Car.java @@ -0,0 +1,21 @@ +public class Car { + private String name; + private int speed; + + public Car(String name, int speed) { + this.name = name; + this.speed = speed; + } + + public String getName() { + return name; + } + + public int getSpeed() { + return speed; + } + + public void setSpeed(int speed) { + this.speed = speed; + } +} diff --git a/src/main/java/Main.java b/src/main/java/Main.java index a9198c43..bc3086d3 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,8 +1,63 @@ -public class Main { +package main; +public class BinarySearch { public static void main(String[] args) { - // ваш код начнется здесь - // вы не должны ограничиваться только классом Main и можете создавать свои классы по необходимости - System.out.println("Привет Мир"); + int[] myList = {87, 21, 45, 93}; + + System.out.println(binarySearch(myList, 93)); + System.out.println(binarySearch(myList, 16)); + } + + public static int binarySearch(int[] list, int item) { + if (isListEmpty(list)) { + return -1; + } + + int low = 0; + int high = list.length - 1; + + while (low <= high) { + int mid = (low + high) / 2; + int guess = list[mid]; + + if (guessEqualsItem(guess, item)) { + return mid; + } else if (guessGreaterThanItem(guess, item)) { + high = mid - 1; + } else if(guessLessThanItem(guess, item)) { + low = mid + 1; + } + } + + return -1; + } + + public static boolean isListEmpty(int[] myList) { + int listSize = myList.length; + if (listSize == 0) { + return true; + } + return false; + } + + public static boolean guessEqualsItem(int guess, int item) { + if (guess != item) { + return false; + } + return true; + } + + public static boolean guessGreaterThanItem(int guess, int item) { + if (guess < item) { + return false; + } + return true; + } + + public static boolean guessLessThanItem(int guess, int item) { + if (guess> item) { + return false; + } + return true; } } diff --git a/src/main/java/Race.java b/src/main/java/Race.java new file mode 100644 index 00000000..690265dc --- /dev/null +++ b/src/main/java/Race.java @@ -0,0 +1,20 @@ +public class Race { + private Car leader; + + public Race() { + this.leader = null; + } + + public void calculateDistance(Car car) { + int distance = car.getSpeed() * 24; + System.out.println("Автомобиль " + car.getName() + " проедет " + distance + " км за 24 часа."); + + if (leader == null || car.getSpeed()> leader.getSpeed()) { + leader = car; + } + } + + public Car getLeader() { + return leader; + } +} \ No newline at end of file

AltStyle によって変換されたページ (->オリジナル) /