Опрацювання елементів списку
👩🏫Методичні акценти для вчителя • План проведення уроку на 45 хвНУШ▼
🎯 Очікувані результати навчання (НУШ):
Формування предметних компетентностей за темою «Опрацювання елементів списку», розвиток критичного мислення, вміння аналізувати причинно-наслідкові зв'язки та застосовувати набуті знання на практиці.
💬 Провокативне питання для старту:
Використайте блок «Гачок (Hook)» нижче для 2-хвилинної розминки з класом перед поясненням нового матеріалу.
⏱️ Рекомендований таймінг 45-хвилинного уроку:
Тема: § 28. Опрацювання елементів списку. Д/з: опрацювати матеріал уроку та завдання «У зошит» на платформі EZZ-SCHOOL BOOKS.
⚡ Фронтальне бліц-опитування класу на початку уроку (2 хв):
- Що є ключовим поняттям теми «Опрацювання елементів списку» і чому воно важливе?
- Де у повсякденному житті, науці чи IT ми стикаємося з цим явищем/алгоритмом?
- Яка найпоширеніша помилка виникає під час першого знайомства з матеріалом?
🏠 Диференційоване домашнє завдання:
- Базовий рівень (обов'язковий): опрацювати конспект і блок «У зошит».
- Достатній рівень: скласти власну шпаргалку та пройти MiniCheck.
- Високий / STEM: виконати симуляцію у лабораторії та скласти BossQuiz на 100 XP.
📊 Критерії формувального оцінювання:
Твоя місія на цей урок
Натискай на цілі у міру їх опанування:
- 1Опанувати два способи обходу списку в циклі: за значеннями (for x in a) та за індексами (for i in range).Опанувати ➔
- 2Складати алгоритми фільтрації: сума, добуток та кількість елементів за умовою.Опанувати ➔
- 3Реалізовувати класичний алгоритм пошуку максимуму та його порядкового номера.Опанувати ➔
- 4Змінювати окремі елементи списку всередині циклу.Опанувати ➔
💡 Як просканувати мільйон чисел без жодної похибки?
Знайти серед тисячі температур дні із заморозками, порахувати відмінників у класі чи замінити всі штрафні бали на нулі — щодня програмісти розв'язують саме такі завдання. Усе це робиться за допомогою циклів, які крок за кроком перевіряють кожну клітинку списку!
1. Базові алгоритми обробки одновимірних масивів
Більшість алгоритмічних завдань у програмуванні зводяться до трьох фундаментальних шаблонів проходження списку циклом for:
1. Акумуляція (Сума / Добуток)
Ініціалізація змінної (total = 0 для суми або prod = 1 для добутку), послідовне додавання елементів у циклі:
total = 0
for x in a:
if x % 2 == 0:
total += x2. Пошук максимуму з індексом
Початкове припущення: перший елемент є найбільшим (max_val = a[0], max_idx = 0):
for i in range(1, len(a)):
if a[i] > max_val:
max_val = a[i]
max_idx = i3. Лінійний пошук прапорцем
Перевірка наявності шуканого значення або виконання умови хоча б для одного елемента:
found = False
for x in a:
if x == target:
found = True
breakІндексація, Зрізи та Методи Списків
a = [12, 7, 25, 4, 18, 9]: Зверху: додатні індекси 0..n-1 | Знизу: від'ємні індекси -n..-1⚡ Методи модифікації списку:
🔪 Зрізи (Slices): a[start : stop : step]
Виділяє підсписок від індексу start до stop (не включаючи stop) з кроком step.
2. Генератори списків (List Comprehensions)
Генератор списку — це елегантна та компактна конструкція мови Python, що дозволяє створити та відфільтрувати новий список в один-єдиний рядок коду:
3. Функція enumerate() та парне проходження
Коли в циклі одночасно потрібні і номер позиції (індекс), і саме значення, професійні пітоністи використовують функцію enumerate():
for i, fruit in enumerate(fruits, start=1):
print(f"{i}. {fruit}")
.append() у віртуальній машині.
🎯 Міні-тест: вибір циклу для зміни списку
Який заголовок циклу слід використати, якщо всередині тіла циклу необхідно замінити значення окремих елементів за їхніми номерами (наприклад, a[i] = 0)?
Оберіть форму циклу:
У зошит (за підручником)
Вправи з підручника до цієї теми уроку. Виконуй у робочий зошит або за комп'ютером за вказівкою вчителя:
Циклічне опрацювання списку: підрахунок парних чисел та заміна від'ємних
💡 Підказка від нас: У списку з 10 цілих чисел підрахувати кількість парних елементів (if x % 2 == 0) та замінити всі від'ємні числа на нуль (a[i] = 0).
Шпаргалка уроку (головне в один екран)
Усе найважливіше для повторення перед уроком або самостійною роботою
- for x in a: — тільки читання
- for i in range(len(a)): — модифікація a[i]
- for i, x in enumerate(a): — обидва разом
- x % 2 == 0 — парне число
- x > 0 — додатне
- s += x — накопичення суми
Бос-тест: Алгоритми опрацювання списків
Питання 1 з 3 • Завдай удару по босу теми