Розробка застосунку «Відгадай загадку»
ПРАКТИЧНА РОБОТА 18
Завдання: скласти програму, яка пропонує користувачеві / користувачці розгадати кілька загадок. Програма повинна почергово задавати загадки, пропонувати варіанти та перевіряти правильність відповідей.
Обладнання: комп’ютер із середовищем програмування Python.
Хід роботи
Під час роботи за комп’ютером дотримуйтеся правил безпеки.
У Python IDLE виберіть команду File → New File.
1. Запишіть команду завантаження модуля easygui:
from easygui import*
2. Створіть список riddles, елементами якого є тексти загадок:
riddles = ['Фарбоване коромисло над річкою зависло. Що це?',
'Біла рілля, чорне насіння. Хто його вміє, той і розуміє.
Хто його знає, той і позбирає.',
'Чорний Іван, дерев’яний каптан: де носом проведе, там помітку кладе.',
'І червона, й соковита, та гірка вона все літо.
Припече мороз – вона стала добра і смачна.']
3. Створіть список answer, елементами якого є відповіді на загадки:
answer=['Веселка', 'Книжка', 'Олівець', 'Kалина']
4. Знайдіть в інтернеті зображення, що відповідають змісту загадок.
Збережіть їх у файлах у форматі GIF у вашій папці.
Пам’ятайте, що графічні файли повинні міститися в одній папці з файлом програми.
5. Створіть список pictures, елементами якого є назви графічних файлів:
pictures=['Веселка.GIF', 'Книжка.GIF', 'Олівець.GIF', 'Калина.GIF']
6. Створіть змінну — лічильник правильних відповідей:
bal = 0
7. У списку чотири загадки, тому в циклі for i in range(4): запрограмуйте такі дії:
• створити діалогове вікно buttonbox, у якому виводиться текст загадки та пропонуються варіанти відповіді;
• присвоїти змінній puzzle значення, що повертає функція buttonbox;
• перевірити, чи дорівнює значення змінної puzzle відповідному елементу списку answer і створити діалогове вікно з повідомленням про правильність відповіді.
for i in range(4):
puzzle = buttonbox(riddles[i], 'Загадка', answer)
if(puzzle == answer[i]):
msgbox('Молодець! Це ' + puzzle, 'Ваша відповідь', 'ok', pictures[i])
bal = bal+1
else:
msgbox('Ні, це не ' + puzzle, 'Ваша відповідь')
8. У змінній message збережіть текст повідомлення про результат:
message = 'Правильних відповідей – ' + str(bal)
9. Створіть діалогове вікно для виведення повідомлення message:
msgbox(message, 'Твій результат', 'OK')
10. Додайте до списків тексти ще декількох загадок і відповідей на них.
Внесіть до програмного коду відповідні зміни.
11. Збережіть файл із назвою Pract18.
Випробуйте програму.
12. Проаналізуйте результати (див. слайд-шоу).
Зробіть висновок: як можна створити функції для підзадач основної задачі.