Практикум з використання інформаційних технологій. Урок № 65. (До ПР18)
Практична робота № 18. «Створення програми «Калькулятор»»
Інтерактивний план-конспект уроку для 8 класу НУШ
🎯 Мета уроку
- Освітня: узагальнити та систематизувати знання учнів щодо створення програм з графічним інтерфейсом; закріпити навички розробки програм для конвертування чисел між десятковою та двійковою системами числення.
- Розвивальна: розвивати алгоритмічне та логічне мислення, вміння розробляти інтерфейс калькулятора, реалізовувати алгоритми конвертування чисел та використовувати різні системи числення.
- Виховна: виховувати уважність, акуратність у кодуванні, відповідальність за результат та зацікавленість у застосуванні знань з інформатики для вирішення практичних завдань.
✅ Очікувані результати
Після уроку учні зможуть:
- Створювати базовий графічний інтерфейс калькулятора за допомогою `tkinter`.
- Розміщувати на вікні віджети `Label`, `Entry`, `Button` та налаштовувати їх властивості.
- Реалізовувати функції для конвертування десяткових чисел у двійкові та навпаки.
- Обробляти події натискання кнопок для запуску функцій конвертації.
- Використовувати вікно повідомлень `messagebox` для виведення результатів.
📊 Групи результатів (НУШ)
Візуалізація важливості груп результатів для цього уроку.
Учень / учениця:
ГР1 – працює з інформацією, даними, моделями;
ГР2 – створює інформаційні продукти;
ГР3 – працює в цифровому середовищі;
ГР4 – безпечно та відповідально працює з інформаційними технологіями.
📚 Тип уроку
Урок застосування знань та формування практичних умінь та навичок.
💻 Обладнання та ПЗ
- Комп'ютери із середовищем програмування Python та встановленою бібліотекою `tkinter`.
- Проєктор або інтерактивна дошка для демонстрації коду та інтерфейсу.
🔗 Міжпредметні зв'язки
- Математика (системи числення, алгоритми ділення та множення).
ПОВТОРЮЄМО
Актуалізація опорних знань
- Що таке **графічний інтерфейс користувача (GUI)**?
- Які віджети `tkinter` ви знаєте?
- Як створити вікно програми та розмістити на ньому віджети?
- Що таке **система числення**?
- Які основні системи числення ви знаєте? (Десяткова, двійкова).
- Яким чином можна перетворити десяткове число у двійкове?
- Яким чином можна перетворити двійкове число у десяткове?

Практичний блок уроку
Питання 1: Множинний вибір (радіокнопки)
Який віджет `tkinter` використовується для виведення текстової інформації на вікно?
Питання 2: Множинний вибір (чекбокси)
Які системи числення ви використовуєте в калькуляторі в практичні роботі № 18?
Питання 3: Заповнення пропусків
Для виведення повідомлень користувачу в `tkinter` використовується модуль , а саме функція .
(Підказка: messagebox, showinfo.)
Питання 4: Зіставлення
Зіставте напрямок конвертації з відповідним віджетом кнопки:
Десяткове → Двійкове
Двійкове → Десяткове
Додаткові завдання (за бажанням)
- Додайте до калькулятора можливість конвертувати числа між іншими системами числення (наприклад, вісімкова, шістнадцяткова).
- Реалізуйте валідацію введених даних, щоб користувач не міг ввести некоректні символи (наприклад, літери в двійкове число).
- Створіть кнопки для очищення полів введення/виведення.
- Додайте можливість збереження історії конвертацій.
Перевірка знань
Натисніть на картку, щоб побачити відповідь.
-
1. Які віджети `tkinter` використовуються для створення полів введення та виведення чисел у програмі «Калькулятор»?Для введення та виведення чисел використовуються віджети `Entry`.
-
2. Опишіть алгоритм перетворення десяткового числа у двійкове.Алгоритм полягає в послідовному діленні десяткового числа на 2 та записуванні остач у зворотному порядку до тих пір, поки частка не стане рівною 0. Остачі формують двійкове число.
-
3. Опишіть алгоритм перетворення двійкового числа у десяткове.Алгоритм полягає в сумуванні добутків цифр двійкового числа на 2, піднесене до степеня, що відповідає позиції цифри (розряду), починаючи з 0 справа наліво.
-
4. Яке призначення модуля `messagebox`?Модуль `messagebox` використовується для виведення стандартних вікон повідомлень користувачеві, наприклад, для відображення результатів конвертації або помилок.
-
5. Що означає команда `root.mainloop()`?Команда `root.mainloop()` запускає головний цикл подій `tkinter`, який очікує на дії користувача (натискання кнопок, введення тексту) та обробляє їх. Без цієї команди вікно програми не буде відображатися.
-
6. Зробіть висновок: як створити обробники подій для елементів керування в програмі з графічним інтерфейсом.Обробники подій створюються як звичайні функції Python, які виконуються у відповідь на певну дію користувача (наприклад, натискання кнопки). Ці функції прив'язуються до віджетів за допомогою параметра `command`.
Домашнє завдання
1. Практична частина:
- Виконати практичну роботу № 18 (стор. 260-262).
2. Завдання за бажанням (для закріплення):
- Інтерактивна платформа IZZI (8 клас) до практичної роботи № 18: https://ua.izzi.digital/DOS/1183864/1346658.html

Додаткові матеріали
- Техніка безпеки
- Оцінювання учнів та учениць на уроках інформатики
- Підручник з інформатики для 8 класу (ПР18, стор. 260-262)
- Інтерактивна платформа IZZI (8 клас)
- Інтерактивна платформа IZZI (8 клас) до практичної роботи № 18: https://ua.izzi.digital/DOS/1183864/1346658.html