Перейти к содержанию

Алгоритмы обработки массивов — работа за компьютером (4/12)

Раздел «Алгоритмы обработки массивов». Работа за компьютером по теме «Алгоритмы обработки массивов». КТП составлено по действующей официальной программе Республики Беларусь.

Открыт · Презентация · Методичка

Конспект урока

Язык примеров

Содержание урока адаптируется под выбранный язык

Поиск в массиве: цикл просматривает, условие отбирает

Дан массив a = [3, 8, 1, 10, 6, 5]. Как вывести только значения больше 5? Нужно пройти по всем индексам и для каждого проверить одно и то же условие.

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

Фильтр: вывести все подходящие элементы

for i := 1 to 6 do
  if a[i] > 5 then
    write(a[i], ' ');

Ожидаемый вывод: 8 10 6.

Цикл гарантирует полный просмотр. Условие if решает, выполнять ли действие для текущего элемента.

Трассировка фильтра

ia[i]a[i] > 5Выводим?
13ложьнет
28истинада
31ложьнет
410истинада
56истинада
65ложьнет

Счётчик: сколько элементов подошло?

k := 0;
for i := 1 to 6 do
  if a[i] > 5 then
    k := k + 1;

Итог: k = 3. Счётчик увеличивается только при истинном условии и обязательно начинается с нуля.

Поиск первого подходящего элемента

Задача «найти первый» отличается от задачи «найти все». После первого совпадения индекс нужно запомнить и завершить поиск.

pos := 0;
i := 1;
while (i <= 6) and (pos = 0) do
begin
  if a[i] mod 2 = 0 then
    pos := i
  else
    i := i + 1;
end;

Первый чётный элемент — a[2]=8, поэтому pos=2.

Почему начальное значение pos=0 удобно

Индексы массива начинаются с 1. Следовательно, ноль можно использовать как специальный признак «ничего не найдено».

После поиска всегда проверяйте результат:

if pos = 0 then
  writeln('Элемент не найден')
else
  writeln('Индекс: ', pos);

Практика: три разных продукта

Для массива [3,8,1,10,6,5]:

  1. вывести все чётные элементы — 8 10 6;
  2. посчитать элементы меньше 6 — их 3;
  3. найти первый индекс элемента больше 9 — индекс 4.

Не смешивайте продукты: список значений, количество и один индекс требуют разных переменных и действий.

Поймайте ошибку

k := 0;
for i := 1 to 6 do
  if a[i] > 5 then
    write(a[i], ' ')
  else
    k := k + 1;

Здесь k считает элементы, не удовлетворяющие условию. Если требуется число элементов больше 5, увеличение должно находиться в ветви истинного условия.

Самопроверка

Дан b = [4, 9, 2, 7, 6].

  1. Выпишите элементы больше 5.
  2. Найдите их количество.
  3. Укажите индекс первого нечётного элемента.

Ключ: 9 7 6; количество 3; первый нечётный элемент b[2]=9, индекс 2.

Источник программы курса: учебная программа Республики Беларусь.

Материалы урока

Скачать и открыть

Учителю

2 материала

Презентация · для учителей

Презентация «Поиск элементов массива по условию»

Полный просмотр, фильтрация, счётчик и поиск первого подходящего элемента в PascalABC.NET.

Скачать PPTX

Методичка · для учителей

Поурочное планирование и опорная схема (РБ)

План практической работы для учителя с рабочим листом, ключами и критериями.

Скачать DOCX

Поурочное планирование и опорная схема (РБ)

DOCX

Комментарии

Войдите, чтобы оставлять комментарии.

Пока нет комментариев. Будьте первым!