Логотип сайту
Інформатика 8 клас

Тема 5: «Алгоритми та програми». Урок № 51. (До § 34)

Елементи вибору

Інтерактивний план-конспект уроку для 8 класу НУШ

🎯 Мета уроку

  • Освітня: ознайомити учнів з елементами вибору в `tkinter` – **Радіокнопками (Radiobutton)** та **Прапорцями (Checkbutton)**, навчити створювати та використовувати ці елементи для взаємодії з користувачем у графічних застосунках.
  • Розвивальна: розвивати навички проектування інтерфейсу користувача, логічне мислення при створенні умов для обробки вибору, вміння реалізовувати варіативну поведінку програми залежно від стану елементів вибору.
  • Виховна: виховувати акуратність та уважність при роботі з графічними елементами, розуміння важливості зручного інтерфейсу для користувача, а також творчий підхід до розробки програмного забезпечення.

✅ Очікувані результати

Після уроку учні зможуть:

  • Розрізняти **Радіокнопки (Radiobutton)** та **Прапорці (Checkbutton)** та розуміти їхнє призначення.
  • Створювати об'єкти класу `Radiobutton` та `Checkbutton` у `tkinter`.
  • Групувати радіокнопки за допомогою атрибута `variable`.
  • Отримувати та встановлювати значення елементів вибору.
  • Розробляти прості програми з графічним інтерфейсом, що використовують елементи вибору для реалізації умовних дій.

📊 Групи результатів (НУШ)

Візуалізація важливості груп результатів для цього уроку.

Учень / учениця:

  • ГР1 – працює з інформацією, даними, моделями;

  • ГР2 – створює інформаційні продукти;

  • ГР3 – працює в цифровому середовищі;

  • ГР4 – безпечно та відповідально працює з інформаційними технологіями.

📚 Тип уроку

Урок засвоєння нових знань та формування вмінь.

💻 Обладнання та ПЗ

  • Персональні комп'ютери з встановленим Python та модулем `tkinter`.
  • Середовище розробки (IDLE, VS Code).
  • Проєктор або інтерактивна дошка.

🔗 Міжпредметні зв'язки

  • Математика (вибір, умови).
  • Дизайн інтерфейсів.

ПОВТОРЮЄМО

Актуалізація опорних знань

  1. Який математичний вираз використовується для обчислення дискримінанта квадратного рівняння?
  2. Скільки коренів має квадратне рівняння, якщо його дискримінант більше нуля?
  3. Що означає, якщо дискримінант квадратного рівняння дорівнює нулю?
  4. Який результат, якщо дискримінант квадратного рівняння менше нуля?
  5. Який модуль Python використовується для роботи з математичними функціями, такими як квадратний корінь?
  6. Яка функція `tkinter.messagebox` використовується для виведення інформаційних повідомлень?
Знак питання

Джерело: Підручник з інформатики для 8 класу (стор. 216)

Практичний блок уроку

1. Оберіть розмір піци (середній корж):
2. Оберіть складники для піци (цибулю й моцарелу):
3. Симулятор конструктора піци (комбінований)

Виберіть розмір піци та додайте бажані складники. Розрахуйте загальну вартість.

Загальна вартість: 0 грн

Зверніть увагу, що для повного функціонування цих прикладів на вашому комп'ютері потрібно запускати Python-код з бібліотекою `tkinter`. Тут представлена симуляція взаємодії.

Перевірка знань

Натисніть на картку, щоб побачити відповідь.

  • 1. У яких випадках використовують компонент `Radiobutton`?
    Коли потрібно вибрати один варіант із декількох запропонованих.
  • 2. Що забезпечує використання компонента `Checkbutton`?
    Можливість увімкнути або вимкнути певний параметр незалежно від інших.
  • 3. Як створити зв'язок між радіокнопками?
    Використовуючи спільну змінну класу `IntVar` та вказуючи її в атрибуті `variable` для кожної радіокнопки.
  • 4. Назвіть три відмінності між об'єктами класу `Radiobutton` та `Checkbutton`.
    • **Вибір:** `Radiobutton` - один з багатьох, `Checkbutton` - кілька з багатьох.
    • **Тип змінної:** `Radiobutton` - `IntVar`, `Checkbutton` - `BooleanVar`.
    • **Значення:** `Radiobutton` - числові `value`, `Checkbutton` - `onvalue`/`offvalue` (зазвичай 1/0).
  • 5. Як організувати перевірку стану прапорця в Python?
    За допомогою методу `.get()` змінної `BooleanVar`, пов'язаної з прапорцем (`if cb_var.get() != 0:`).
  • 6. Як додати до програми Конструктор піц ще один прапорець (наприклад, для вибору складника "Бекон")?
    • 1. Створити нову `BooleanVar()`: `cvar3 = BooleanVar()`.
    • 2. Створити `Checkbutton`: `Checkbutton(root, text="Бекон 25 грн", variable=cvar3, onvalue=1, offvalue=0).pack(anchor=W)`.
    • 3. Оновити функцію `btn_click()` для врахування вартості Бекону: `suma = var.get()*60 + cvar1.get()*8 + cvar2.get()*18 + cvar3.get()*25`.

Джерело: Підручник з інформатики для 8 класу (стор. 217-220)

Домашнє завдання

1. Теоретична частина:

  • Опрацювати § 34 (стор. 217-222).

2. Практична частина:

  • Виконати завдання із прикладів №№ 1-5 (стор. 218-220).

3. Завдання за бажанням (для закріплення):

Учні з книгами або комп'ютерами

Додаткові матеріали