Skip to main content

33. Поиск

Теория

Рассмотрим задачу

info

Дан массив целых чисел, нужно найти индекс его первого нулевого элемента

public class Main {
public static void main(String[] args) {
int[] arr = new int[]{1, 2, 3, 0, 4, 5, 6, 2, 1};

int pos = -1;

// в цикле n раз считываем соответствующие элементы
for (int i = 0; i < arr.length; i++) {
// если i-ый элемент равен нулю
if (arr[i] == 0){
pos = i;
// преждевременно завершаем выполнение цикла
break;
}
}

if (pos != -1)
System.out.println(pos);
else
System.out.println("НЕТ");

}
}

На консоль будет выведено:

3

Чтобы найти индекс последнего, нужно убрать команду break

Задание

Массив arr уже объявлен, вам нужно написать только команды, обрабатывающие его значения, т.е. только часть тела метода main().

  1. Составить программу расчета квадратного корня из любого элемента массива. Ответ выведите с точностью до трёх знаков после запятой.
  2. Дан массив. Составить программу расчета среднего арифметического двух любых элементов массива. Ответ выведите с точностью до трёх знаков после запятой.
  3. Вывести на экран наименьший номер элемента, который совпадает с последним элементом массива. Если такого элемента нет, вывести НЕТ. Имеется ввиду, конечно, что сам последний элемент нам не интересен.
  4. Вывести на экран номер последнего двузначного элемента массива. Если в массиве нет ни одного двузначного элемента, вывести на экран НЕТ.
  5. Вывести на экран наименьший номер элемента, который совпадает с k-ым элементом массива. Если такого элемента нет, вывести НЕТ. Имеется ввиду, конечно, что сам kk-ый элемент нам не интересен.
  6. Вывести на экран номер второго четного элемента массива. Если это невозможно сделать (в массиве менее двух четных элементов), вывести на экран НЕТ.
  7. Вывести на экран номер первого по счету элемента массива, который отличается хотя бы от трёх различных расположенных левее элементов. Если такого нет, вывести НЕТ. Обратите внимание! "Расположенных левее" - это не значит "расположенных непосредственно левее" (с номерами на 11 и на 22 меньше). Это значит просто "левее" - то есть, хоть где-нибудь слева.

Ссылка на контест