Інформатика 7 клас

Практикум з використання інформаційних технологій. Урок № 66. (До ПР18)

Практична робота № 18. «Розробка застосунку «Відгадай загадку»»

Інтерактивна практична робота для 7 класу НУШ

🎯 Мета уроку

  • Освітня: Закріпити знання про списки, цикли, розгалуження; навчити використовувати модуль `easygui` для створення діалогових вікон; навчити складати програми, що взаємодіють з користувачем.
  • Розвивальна: Розвивати алгоритмічне та логічне мислення; формувати вміння організовувати дані у списки; розвивати навички роботи з GUI.
  • Виховна: Виховувати самостійність, відповідальність та креативність при розробці власного програмного продукту.

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

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

  • Створювати та ініціалізувати списки в Python.
  • Використовувати цикли для перебору елементів списку.
  • Застосовувати розгалуження для перевірки умов.
  • Імпортувати та використовувати функції `easygui`.
  • Організовувати взаємодію з користувачем.
  • Складати програму, що ставить загадки та перевіряє відповіді.

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

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

📚 Тип уроку

Урок застосування знань, умінь та навичок (практична робота).

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

  • Комп'ютери (для кожного учня) з встановленим середовищем програмування Python (наприклад, IDLE).
  • Модуль easygui (повинен бути встановлений).
  • Графічні файли (зображення-відповіді до загадок у форматі GIF).
  • Завдання практичної роботи.

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

  • Українська мова (загадки, робота з текстом).
  • Математика (логічні умови, підрахунок результатів).
  • Мистецтво (графічні зображення).

Ключові елементи програми

1. Списки для зберігання даних

Ми використовуємо три списки, щоб організувати дані гри. Важливо, щоб елементи в них відповідали один одному за індексом.

riddles = ['Загадка 1', 'Загадка 2', ...]
answer  = ['Відповідь 1', 'Відповідь 2', ...]
pictures= ['pic1.gif', 'pic2.gif', ...]

2. Цикл для перебору загадок

Цикл `for i in range(4):` дозволяє послідовно пройти по кожній з чотирьох загадок, використовуючи індекс `i` для доступу до елементів у списках.

3. Вікно з варіантами: `buttonbox`

Ця функція показує вікно із загадкою та кнопками-варіантами. Вона повертає текст натиснутої кнопки.

Приклад вікна buttonbox

4. Вікно з повідомленням: `msgbox`

Використовується для показу результату: правильно чи ні. Можна також додати зображення.

Приклад вікна msgbox

Гра «Відгадай загадку»

Це симулятор програми, яку ви створите на уроці. Натисніть "Почати гру", щоб перевірити свої знання та побачити, як працює застосунок.

Питання для самоперевірки

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

Для чого в цій програмі використовуються списки?
Для зберігання та організації даних: текстів загадок, правильних відповідей та назв файлів зображень.
Яка функція `easygui` створює вікно з кнопками-варіантами?
`buttonbox()`.
Як програма дізнається, яку відповідь обрав користувач?
Функція `buttonbox()` повертає текст, написаний на натиснутій кнопці. Це значення ми зберігаємо у змінну.
Як перевіряється правильність відповіді?
За допомогою оператора `if`, який порівнює відповідь користувача з правильним елементом зі списку `answer`.
Чому важливо, щоб файли зображень були в тій самій папці, що й програма?
Тому що ми вказуємо лише ім'я файлу (`'Калина.GIF'`), а не повний шлях. Програма шукає його в поточній папці.
Чи можна легко додати нову загадку до гри?
Так, потрібно просто додати новий елемент до кожного з трьох списків (`riddles`, `answer`, `pictures`) та змінити `range` в циклі.

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

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

  • Виконати практичну роботу № 18 (стор. 263-265).
  • Приклад виконання: https://youtu.be/FZvONqyVt64

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

Дівчинка з книгою