Тема 9 · Информатика
Массивы и последовательности
Обработка массивов, поиск максимума и минимума, суммирование и подсчёт, линейный поиск, рекуррентные последовательности. 100 заданий на отработку.
Простыми словами
Массив — это ряд пронумерованных ячеек, как шкафчики в раздевалке. Чтобы взять вещь, достаточно знать номер шкафчика — индекс.
Массив (в Питоне — список) хранит элементы под номерами. Нумерация начинается с нуля: у массива из элементов индексы . Обращение к элементу: A[i]; len(A) — количество элементов.
A = [4, 7, 2, 9]: print(A[0], A[3]) выведет 4 9Типовые алгоритмы
| Задача | Идея |
|---|---|
| сумма элементов | s = 0, в цикле s = s + A[i] |
| количество по условию | k = 0, в цикле if условие: k = k + 1 |
| максимум | m = A[0], в цикле if A[i] > m: m = A[i] |
| индекс максимума | im = 0, в цикле if A[i] > A[im]: im = i |
| линейный поиск | идём по элементам слева направо, пока не встретим нужный |
| среднее арифметическое | сумма, делённая на количество элементов |
A = [14, 15, 21, 16, 1, 6, 11]
s = 0
for i in range(len(A)):
if i % 2 == 0:
s = s + A[i]
print(s)
- Условие на индекс, а не на значение: берём .
- .
A = [15, 22, 22, 19, 4, 10], в цикле A[i] = A[i] - 1, затем s = s + A[i]. Каждый элемент уменьшился на 1: .
Если искомое число стоит под индексом 6, алгоритм выполнит сравнений — по одному на каждый просмотренный элемент.
Самая частая ошибка — «сдвиг на единицу». Индексы с нуля: «индекс наибольшего» на 1 меньше, чем его «номер по счёту». range(len(A)) даёт .
Массив — набор элементов одного типа, у каждого свой номер (индекс); к элементу по индексу обращаются за одно действие: A[3]. Сумма — накопитель s = 0 и в цикле s += A[i]; количество подходящих — счётчик k = 0, который увеличивают при выполнении условия. Чтобы поменять местами два элемента, нужна вспомогательная переменная: t = A[i]; A[i] = A[j]; A[j] = t (в Питоне можно и A[i], A[j] = A[j], A[i]). Рекуррентная формула задаёт член последовательности через предыдущие.
Рекуррентные последовательности
Рекуррентная формула задаёт первый член и правило получения следующего из предыдущего, например , . Чтобы найти -й член, заполняют таблицу по шагам.
, . Найти .
| 1 | 2 | 3 | 4 | 5 | |
| 6 | 36 | 76 | 156 |
Номер в таблице — это . Чтобы дойти от до , нужно сделать 7 шагов, а не 8.
Последовательность может быть дана и диаграммой: по столбцам считывают значения и ищут наибольшее, наименьшее, сумму — как в массиве.
Где это пригодится: ЕГЭ — 1 заданиеЗадания экзамена 11 класса, которые опираются на этот материал — нажмите, чтобы раскрыть список
Готовые работы по теме
Собраны заранее — одним нажатием: распечатать с ключом, раздать ученикам ссылкой или QR-кодом, поменять настройки. Номер набора постоянный: по этой ссылке всегда та же работа.
теория этой темы, 8 заданий по подтемам и ключ — файлом DOCX, который можно править под себя.
Прохождение онлайн
Имя ученика никуда не отправляется: он вводит только номер по списку, а таблицу «номер → фамилия» видите только вы.
Классы, выданные работы и результаты учеников по кодам — в журнале учителя: без регистрации, хранится только на этом компьютере.