JavaRush
AI Academy
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/Помогите понять, плиз - в консоли всё выводит, как надо -...
Ivan
7 уровень
  • 09.09.2023
  • 239просмотров
  • 5комментариев

Помогите понять, плиз - в консоли всё выводит, как надо - true или false - но валидатор не принимает решение...

Вопрос по задаче Есть ли кто?
Java Syntax,  6 уровень,  8 лекция
Решен

Реализуй метод main(String[]), который выводит в консоль true, если элемент содержится в переданном массиве, иначе — false.
Массив array не должен изменять расположение своих элементов.

Для поиска элемента в массиве нужен бинарный поиск. Чтобы это сделать, используй статический метод Arrays.binarySearch(int[], int) класса Arrays. Первым параметром нужно передать отсортированный массив, в котором выполнить поиск, вторым параметром — искомый элемент. Метод Arrays.binarySearch(int[], int) возвращает индекс искомого элемента, если такой элемент есть в массиве.

Для сортировки массива можно использовать метод Arrays.sort(int[]).
При тестировании значения переменных класса Solution будут разными.

Требования:
  • В методе main(String[]) не изменяй расположение элементов массива array.
  • При вызове метода main(String[]) вывести в консоли true, если значение переменной element содержится в массиве.
  • При вызове метода main(String[]) вывести в консоли false, если переданный элемент не содержится в массиве.
  • В методе main(String[]) используй вызов метода Arrays.binarySearch(int[], int).
.....
package com.javarush.task.pro.task05.task0519; import java.util.Arrays; /* Есть ли кто? */ public class Solution { public static int[] array = {9, 8, 7, 6, 5, 4, 3, 2, 1}; public static int element = 51; public static void main(String[] args) { isPresent(element); System.out.println(isPresent(element)); } static boolean isPresent(int element) { int[] arrayCopy = Arrays.copyOf(array, array.length); Arrays.sort(arrayCopy); int index = Arrays.binarySearch(arrayCopy, element); for (int i = 0; i < arrayCopy.length; i++) { if (index + 1 == element) { return true; } else { return false; } } return true; } }
0
Комментарии (5)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Сирёга
Уровень 32
9 сентября 2023, 14:47
👍
0
Ivan QA Automation Engineer Expert
9 сентября 2023, 14:45
Осознал))) Кстати, так - тоже норм работает: public class Solution { public static int[] array = {9, 8, 7, 6, 5, 4, 3, 2, 1}; public static int element = 5; public static void main(String[] args) { System.out.println(isPresent(element)); } static boolean isPresent(int element) { int[] arrayCopy = Arrays.copyOf(array, array.length); Arrays.sort(arrayCopy); int index = Arrays.binarySearch(arrayCopy, element); return index >= 0; } }
0
Сирёга
Уровень 32
9 сентября 2023, 14:31
Все нужно сделать в main, никаких доп.методов (если что, решение в три строки, без цикла - все в лекции 🙂)
0
Ivan QA Automation Engineer Expert
9 сентября 2023, 14:35
Перенёс в main, всё равно пункт №2 требований не проходит
0
Сирёга
Уровень 32
9 сентября 2023, 14:44
Вы неправильно поняли/используете Arrays.binarySearch: если больше -1 - элемент находится в массиве
0
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush