Главная >> Информатика 11 класс. Босова

§ 8. Структурированные типы данных. Массивы

Проверка соответствия элементов массива некоторому условию

Пример 3. Подсчёт количества элементов, удовлетворяющих некоторому условию.

Зачастую бывает важно выяснить, сколько элементов, обладающих определённым свойством, содержится в массиве. Для решения этой задачи следует:

    1) присвоить нулевое значение переменной, введённой для подсчёта количества элементов, удовлетворяющих заданному условию (k := 0);

    2) организовать просмотр всех элементов массива: если просматриваемый элемент удовлетворяет заданному условию, значение переменной k увеличивать на 1.

Фрагмент программы подсчёта количества элементов массива, например больших некоторого числа р, имеет вид:

Запишите полный текст программы и выполните её на компьютере для рассматриваемого в примере 8 массива а, состоящего из семи элементов, и числа р = 15.

Как модифицировать программу, чтобы можно было вычислить сумму элементов массива, ббльших некоторого числа р?

Пример 6. Проверка соответствия всех элементов массива некоторому условию.

Для того чтобы установить факт соответствия всех элементов массива некоторому условию, достаточно:

    1) подсчитать количество элементов массива, соответствующих заданному условию;

    2) сравнить найденное количество с общим числом элементов массива и вывести соответствующий результат.

Самостоятельно разработайте программу, позволяющую определить, все ли элементы массива являются двузначными числами. Выполните её на компьютере для рассматриваемого в примере 8 массива а, состоящего из семи элементов.

Пример 7. Проверка массива на упорядоченность.

Рассмотрим алгоритм, позволяющий определить, упорядочены ли элементы массива а[1..n] по неубыванию, т. е. каждый элемент массива с 1-го по (n - 1)-й не больше последующего.

Самый простой путь решения этой задачи — проверить, есть ли в массиве такие пары элементов, что a[i] > a[i + 1]. Если подобные пары элементов есть, то массив не упорядочен по неубыванию, а если таких пар нет, то упорядочен.

В программе будем использовать логическую переменную flag:

  • если flag = true, то массив упорядочен;
  • если flag = false, то массив неупорядочен.

Ниже представлен фрагмент программы, реализующей этот алгоритм:

Запишите полный текст программы и выполните её на компьютере для рассматриваемого в примере 8 массива а, состоящего из семи элементов.

Как можно решить эту же задачу путём подсчёта количества пар элементов массива, таких что a[i] > a[i + 1] (а[i] <= а[i + 1])?

 

 

???????@Mail.ru