Поділіться своєю думкою про онлайн уроки інформатики. Пройдіть анонімне опитування на головній сторінці сайту
(за підручником Й.Я. Ривкінд та ін., § **)
Вступне слово (3–4 хвилини)
Добрий день, діти! Сьогодні ми з вами поговоримо про те, як правильно розв’язувати будь-яку задачу за допомогою комп’ютера. Ви вже вмієте складати прості алгоритми, писати програми на Python і Lazarus, але щоб задача була розв’язана правильно й швидко — важливо дотримуватись чітких етапів. Саме ці етапи використовують усі професійні програмісти й розробники проєктів. Після сьогоднішнього уроку ви зможете самостійно пройти весь шлях від «є задача» до «працює готова програма».
Актуальність і застосування у житті (2 хвилини)
Ці етапи потрібні не лише на уроках інформатики.
Розробники ігор (Minecraft, Roblox, Genshin Impact) проходять їх щодня.
Програмісти банківських систем, додатків «Дія», онлайн-магазинів — теж.
Навіть коли ви в майбутньому створюватимете свій сайт, Telegram-бота чи гру — ви будете точно знати, що робити крок за кроком і нічого не пропустите.
Актуалізація опорних знань (5 хвилин)
Швидко пригадайте, будь ласка:
Що таке алгоритм? → Послідовність команд, які точно й однозначно ведуть до результату.
Які основні властивості алгоритму ви знаєте? → Дискретність, визначеність, масовість, результативність, скінченність.
Назвіть три основні алгоритмічні конструкції. → Лінійна, розгалуження, цикл.
Де ми вже створювали проєкти? → У Python (PyCharm, IDLE) і в Lazarus — новий проєкт → форма → код → запуск. Молодці! На цих знаннях ми будемо спиратися сьогодні.
Основна частина. Теоретичні відомості (12–15 хвилин)
Професійні програмісти розв’язують задачу за 6 основних етапів:
Постановка задачі
Чітко зрозуміти, що саме треба отримати.
Визначити вхідні та вихідні дані. Приклад: «Обчислити вартість покупки з урахуванням знижки 10 %».
Аналіз задачі та вибір методу розв’язання
Розбити задачу на дрібніші підзадачі.
Вибрати потрібні алгоритмічні конструкції (цикли, умови).
Вирішити, яка мова програмування чи середовище підходить краще.
Проєктування алгоритму
Скласти блок-схему або записати алгоритм словесно/псевдокодом.
Приклад псевдокоду: Початок Ввести суму покупки знижка = сума * 0.1 до сплати = сума – знижка Вивести до сплати Кінець
Кодування (написання програми)
Перевести алгоритм у код обраної мови (Python або Lazarus).
Тестування й відлагодження
Запустити програму з різними даними (нормальні, граничні, помилкові).
Виправити помилки (баги).
Документування та супровід
Додати коментарі в коді.
Зберегти проєкт, написати коротку інструкцію.
Ці етапи ще називають «життєвий цикл програми».
Практична робота (20–25 хвилин)
Завдання практичної роботи № 18
Тема: «Магазин знижок»
Створити програму, яка запитує у користувача суму покупки (грн) і відсоток знижки (наприклад, 5, 10, 15 %), а потім виводить:
розмір знижки (грн)
суму до сплати
повідомлення «Знижка більше 100 грн — подарунок!» (якщо знижка > 100).
Виконати це завдання можна або в Python, або в Lazarus — обирайте те, з чим вам комфортніше.
Покрокова інструкція (дуже детальна)
Відкрийте Microsoft Word → створіть звіт (10 хвилин на початку уроку)
Пуск → Word → новий документ
Перший рядок: ПРІЗВИЩЕ ІМ’Я 8-? Практична робота №18 — шрифт 28, напівжирний, по центру
Далі: Дата, Практична робота, Тема: Етапи розв’язування задач… — шрифт 14
Збережіть: Файл → Зберегти як → Цей ПК → Диск D:\Work\Ваше_прізвище\ назва файлу: Завдання_Знижки_ПРІЗВИЩЕ.docx
Оберіть мову та середовище Варіант А — Python (IDLE або PyCharm Community) Варіант Б — Lazarus
Варіант А. Python (IDLE) — найпростіший
Пуск → введіть IDLE → відкриється оболонка Python
Файл → New File (Ctrl+N)
Напишіть код:
Python
# Практична робота №18. Знижки в магазині
# Прізвище Ім'я, 8 клас
suma = float(input("Введіть суму покупки (грн): "))
vidskotka = float(input("Введіть відсоток знижки: "))
znizhka = suma * vidskotka / 100
do_splaty = suma - znizhka
print("Розмір знижки:", round(znizhka, 2), "грн")
print("Сума до сплати:", round(do_splaty, 2), "грн")
if znizhka > 100:
print("Знижка більше 100 грн — подарунок!")
else:
print("Дякуємо за покупку!")
Зберегти: File → Save As → Диск D:\Work\Ваше_прізвище\Знижки_ПРІЗВИЩЕ.py
Запуск: Run → Run Module (F5)
Перевірте роботу з різними даними (наприклад, 1500 і 15; 500 і 5; 2000 і 20).
Зробіть 3–4 скріншоти (клавіша PrintScreen → вставте в Word).
Закрийте IDLE.
Варіант Б. Lazarus (для тих, хто любить форми)
Відкрийте Lazarus → Project → New Project → Application → OK
На формі розмістіть:
2 Edit (TEdit1, TEdit2)
3 Label для результатів
1 Button «Обчислити»
Подвійний клік на кнопку → код:
pascal
procedure TForm1.Button1Click(Sender: TObject);
var suma, vidskotka, znizhka, do_splaty: real;
begin
suma := StrToFloat(Edit1.Text);
vidskotka := StrToFloat(Edit2.Text);
znizhka := suma * vidskotka / 100;
do_splaty := suma - znizhka;
Label3.Caption := 'Знижка: ' + FloatToStrF(znizhka, ffFixed, 8, 2) + ' грн';
Label4.Caption := 'До сплати: ' + FloatToStrF(do_splaty, ffFixed, 8, 2) + ' грн';
if znizhka > 100 then
Label5.Caption := 'Подарунок!'
else
Label5.Caption := 'Дякуємо за покупку!';
end;
Збережіть проєкт і виконуваний файл у свою папку на D:\Work\Ваше_прізвище
Запустіть (F9), перевірте, зробіть скріншоти → вставте в Word.
Готово! У Word має бути: титульна інформація, 3–5 скріншотів, коротко описані етапи, які ви пройшли (1–6).
Критерії оцінювання (8 клас — за 4 групами результатів НУШ)
Максимум — 12 балів
ГР1. Працює з інформацією, даними, моделями — 3 б 3 — правильно введено та оброблено дані (сума і відсоток), використано формули 2 — є помилки в обчисленнях 1 — дані введено, але формули неправильні
ГР2. Створює інформаційні продукти — 4 б 4 — програма повністю працює, є всі виводи + подарунок 3 — працює, але без повідомлення про подарунок або з дрібними неточностями 2 — програма запускається, але результат неправильний 1 — код написано, але не запускається
ГР3. Працює в цифровому середовищі — 3 б 3 — правильно створено, збережено, запущено проєкт у середовищі 2 — є проблеми зі збереженням або запуском 1 — виконано в неправильному середовищі
ГР4. Безпечно та відповідально — 2 б 2 — файл збережено у свою папку з правильною назвою, є коментарі в коді 1 — назва файлу неправильна або коментарів немає
Домашнє завдання
Допрацювати програму: додати можливість вибору подарунка (наприклад, «кава», «шкарпетки», «футболка») через ще одне вікно вводу.
Намалювати від руки блок-схему вашого алгоритму (можна олівцем на аркуші А4, сфотографувати і принести).
Безмашинний варіант (30 хвилин при відключенні світла)
Завдання на аркуші:
«Магазин “Світло є”»
Уявіть, що ви розробляєте програму для касира.
Запишіть чітку постановку задачі (що вводимо, що виводимо).
Розбийте задачу на 3–4 підзадачі.
Намалюйте блок-схему алгоритму олівцем (використовуйте прямокутники, ромби, стрілки).
Напишіть псевдокод українською мовою (5–7 рядків).
Придумайте 3 тестові набори даних і вручну порахуйте результат.
Успіхів усім! Чекаю гарних проєктів і креативних знижок :)
8 клас
(30 запитань, 4 варіанти відповідей, одна правильна)
Скільки основних етапів розв’язування задач за допомогою комп’ютера виділяють у сучасній методиці? а) 4 б) 5 в) 6 г) 7 Правильна відповідь: в) 6
Який етап іде першим? а) Кодування б) Постановка задачі в) Тестування г) Проєктування алгоритму Правильна відповідь: б) Постановка задачі
На якому етапі визначають вхідні та вихідні дані? а) Аналіз задачі б) Постановка задачі в) Кодування г) Документування Правильна відповідь: б) Постановка задачі
Псевдокод і блок-схеми створюють на етапі а) Кодування б) Проєктування алгоритму в) Тестування г) Аналізу Правильна відповідь: б) Проєктування алгоритму
Що таке «відлагодження»? а) Написання коментарів б) Пошук і виправлення помилок в) Збереження файлу г) Створення інтерфейсу Правильна відповідь: б) Пошук і виправлення помилок
Який етап ще називають «життєвий цикл програми»? а) Тільки кодування б) Усі 6 етапів разом в) Лише тестування г) Документування Правильна відповідь: б) Усі 6 етапів разом
Де найчастіше використовують блок-схеми? а) У готовій програмі б) На етапі проєктування алгоритму в) Під час збереження файлу г) У коментарях Правильна відповідь: б) На етапі проєктування алгоритму
Які дані називають «граничними» під час тестування? а) Найменші та найбільші допустимі значення б) Випадкові числа в) Негативні числа г) Текстові дані Правильна відповідь: а) Найменші та найбільші допустимі значення
Що обов’язково має бути в постановці задачі? а) Готовий код б) Чітке формулювання мети та даних в) Скріншоти г) Коментарі Правильна відповідь: б) Чітке формулювання мети та даних
Коментарі в коді додають на етапі а) Документування та супровід б) Кодування в) Тестування г) Аналізу Правильна відповідь: а) Документування та супровід
Який етап можна пропустити, якщо програма працює з першого разу? а) Тестування б) Відлагодження в) Постановку задачі г) Жоден не можна пропускати Правильна відповідь: г) Жоден не можна пропускати
Що роблять на етапі «аналіз задачі»? а) Пишуть код б) Розбивають задачу на підзадачі в) Запускають програму г) Малюють форму Правильна відповідь: б) Розбивають задачу на підзадачі
Який тип помилки найчастіше виявляють під час тестування? а) Синтаксичну б) Логічну в) Орфографічну г) Графічну Правильна відповідь: б) Логічну
Де зберігають проєкт, щоб його можна було редагувати пізніше? а) Тільки виконуваний .exe б) Усі файли проєкту (код, форма, ресурси) в) Тільки скріншоти г) У хмарі Правильна відповідь: б) Усі файли проєкту
Яка властисть алгоритму гарантує, що він колись закінчиться? а) Дискретність б) Скінченність в) Масовість г) Визначеність Правильна відповідь: б) Скінченність
16–30 (продовження)
Який символ у блок-схемі означає рішення (умову)? а) Прямокутник б) Ромб в) Овал г) Паралелограм Правильна відповідь: б) Ромб
Яке розширення файлу має проєкт Lazarus? а) .py б) .lpi в) .docx г) .exe Правильна відповідь: б) .lpi
Як називається помилка, коли програма «зависає» назавжди? а) Синтаксична б) Нескінченний цикл в) Помилка пам’яті г) Логічна Правильна відповідь: б) Нескінченний цикл
Який ключовий етап пропускають новачки найчастіше? а) Кодування б) Тестування з різними даними в) Збереження г) Запуск Правильна відповідь: б) Тестування з різними даними
Що таке «модель задачі»? а) Спрощене описання задачі (вхід → обробка → вихід) б) Готова програма в) Інтерфейс г) Коментарі Правильна відповідь: а) Спрощене описання задачі
21–30
Який етап відповідає за створення зручного інтерфейсу? а) Кодування б) Проєктування алгоритму в) Документування г) Тестування Правильна відповідь: а) Кодування (для візуальних мов)
Які дані треба перевірити обов’язково під час тестування? а) Тільки позитивні б) Нормальні, граничні та помилкові в) Тільки нулі г) Текстові Правильна відповідь: б) Нормальні, граничні та помилкові
Де найбезпечніше зберігати шкільні проєкти? а) На робочому столі б) У своїй папці на диску D:\Work\Прізвище в) У корені диска C г) На флешці Правильна відповідь: б) У своїй папці на диску D:\Work\Прізвище
Що таке «коментарі» в коді? а) Текст, який не виконується, але пояснює код б) Помилки в) Змінні г) Функції Правильна відповідь: а) Текст, який не виконується
Яка команда в Python виводить текст на екран? а) input() б) print() в) if г) for Правильна відповідь: б) print()
Який етап дозволяє виявити, що знижка рахується неправильно? а) Кодування б) Тестування в) Постановка задачі г) Збереження Правильна відповідь: б) Тестування
Як називається документ, де описано, як користуватись програмою? а) Код б) Інструкція користувача в) Блок-схема г) Псевдокод Правильна відповідь: б) Інструкція користувача
Яка команда в Lazarus запускає програму? а) F5 б) F9 в) Ctrl+S г) F11 Правильна відповідь: б) F9
Що роблять, коли програма видає неправильний результат? а) Змінюють назву файлу б) Повертаються до відлагодження в) Видаляють код г) Нічого Правильна відповідь: б) Повертаються до відлагодження
Який останній етап у життєвому циклі програми? а) Кодування б) Тестування в) Документування та супровід г) Постановка задачі Правильна відповідь: в) Документування та супровід
До оцінювання за критерієм Група результатів 1 (ГР1) «Працює з інформацією, даними, моделями» підходять питання № 1, 2, 3, 8, 9, 12, 15, 16, 18, 19, 20, 22, 26, 29
До оцінювання за критерієм Група результатів 2 (ГР2) «Створює інформаційні продукти» підходять питання № 4, 5, 10, 13, 14, 21, 24, 25, 27, 30
До оцінювання за критерієм Група результатів 3 (ГР3) «Працює в цифровому середовищі» підходять питання № 6, 7, 11, 17, 23, 28
До оцінювання за критерієм Група результатів 4 (ГР4) «Безпечно та відповідально працює з інформаційними технологіями» підходять питання № 14, 23, 24, 27, 30
(Деякі питання оцінюють одразу 2 критерії, тому загальна кількість перевищує 30 — це нормально за НУШ).