. Це "вкладення верхнього рівня" – кіт шукає, поки не знайде. Усередині – рух, перевірка, рахунок, поведінка на перешкоди. Посилання на середовище програмування Scratch:https://scratch.mit.edu/ " title="Квест: Знайдіть іграшку!Сюжет. Кіт шукає м’ячик у кімнаті. Він рухається по сцені, перевіряючи кольори, об'єкти, і рахує, скільки кроків зробив, поки не знайде іграшку. Підказки для реалізації:1. Вкладений цикл: "Поки не знайде → досліджує":повторювати поки <не торкається [м’ячика]>. Це "вкладення верхнього рівня" – кіт шукає, поки не знайде. Усередині – рух, перевірка, рахунок, поведінка на перешкоди. Посилання на середовище програмування Scratch:https://scratch.mit.edu/ ">
> тоді:повернути на (випадкове значення від -90 до 90).або навіть змінити напрямок:встановити напрямок на (випадкове значення від 0 до 360). 3. Змінна: "кількість спроб". На початку обов’язково:встановити [кількість спроб v] в (0). Щоразу, коли кіт рухається:змінити [кількість спроб v] на (1). Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю." title="Квест: Знайди іграшку! 2. Умова з сенсором: "торкається предмета → змінює напрямок"Якщо кіт торкається стіни або краю сцени, треба:поворот на випадковий кут: якщо <торкається [стіни v] або <торкається [краю]>> тоді:повернути на (випадкове значення від -90 до 90).або навіть змінити напрямок:встановити напрямок на (випадкове значення від 0 до 360). 3. Змінна: "кількість спроб". На початку обов’язково:встановити [кількість спроб v] в (0). Щоразу, коли кіт рухається:змінити [кількість спроб v] на (1). Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю.">
ЩО ТАКЕ ВКЛАДЕНИЙ ЦИКЛ І НАВІЩО ВІН ПОТРІБЕН?Вкладений цикл – це цикл всередині іншого циклу. Тобто один цикл виконується багато разів, і кожного разу в ньому ще один цикл також запускається. У Scratch це виглядає приблизно так:повторити (6): // Зовнішній цикл. повторити (4): // Внутрішній цикл. рух на 50 кроків. повернути на 90 градусів. повернути на 60 градусів.
ЩО ТАКЕ ВКЛАДЕНИЙ ЦИКЛ І НАВІЩО ВІН ПОТРІБЕН?Вони дають можливість: Повторювати цілу серію дій багато разів. Створювати складні малюнки (візерунки, спіралі, зірки, фрактали). Робити алгоритми більш структурованими (наприклад, "повтори 5 разів малювання квадрата"). Створювати таблиці, шахівниці, сітки (наприклад, у грі).
Без вкладеного циклу З вкладеним циклом. Малюнок однієї фігури. Малюнок кількох фігур у візерунку. Простий рух. Комплексна структура📐 Орнамент: Зовнішній цикл обертає спрайт. Внутрішній малює фігуру (наприклад, квадрат або трикутник).🕹️ Ігри: Перебір рядів і стовпців (наприклад, у грі "Хрестики-нулики" або "Поле чудес").🧶 Анімації: Створення рухів, які повторюються блоками.🧠 Порівняння: ЩО ТАКЕ ВКЛАДЕНИЙ ЦИКЛ І НАВІЩО ВІН ПОТРІБЕН?
ЯК ПРАЦЮЄ ЦИКЛ З УМОВОЮ, І ЧИМ ВІН ВІДРІЗНЯЄТЬСЯ ВІД ЗВИЧАЙНОГО ЦИКЛУ?Цикл з умовою в Scratch – це блок:повторювати поки <умова>Що він робить?Цей цикл повторює дії доти, поки умова НЕ виконається (не стане істинною). Приклад:повторювати поки <не доторкається до кольорую>: рух на 10 кроків. Кіт буде рухатись доти, доки НЕ доторкнеться до кольору. Коли доторкнеться – цикл зупиниться.
Тип циклу. Що робить. Коли зупиняєтьсяповторити (10)Повторює дії точно 10 разів. Після 10 виконаньзавжди. Повторює дії безкінечно. Лише при зупинці програмиповторювати поки <умова>Повторює поки умова НЕ істинна Коли умова стане істинною ЯК ПРАЦЮЄ ЦИКЛ З УМОВОЮ, І ЧИМ ВІН ВІДРІЗНЯЄТЬСЯ ВІД ЗВИЧАЙНОГО ЦИКЛУ?Чим цикл з умовою відрізняється від звичайного циклу?
Переваги циклу з умовою:✅ Працює динамічно – не треба знати кількість повторень заздалегідь.✅ Реагує на події в програмі: натискання клавіш, торкання, зміну змінної тощо.✅ Ідеально підходить для ігор, реакцій на дії гравця або руху спрайтів. ЯК ПРАЦЮЄ ЦИКЛ З УМОВОЮ, І ЧИМ ВІН ВІДРІЗНЯЄТЬСЯ ВІД ЗВИЧАЙНОГО ЦИКЛУ?Приклад: Завдання: Кіт має стрибнути вгору, коли натиснута клавіша вгору. Скрипт:завжди: якщо <клавіша вгору натиснута>: змінити y на 10. Але якщо хочете, щоб перевірка працювала лише доти, доки натиснуто клавішу – можна використати цикл з умовою:повторювати поки <не натиснута клавіша вгору>: чекати (0.1) сек. // після цього спрайт стрибає.
Цикл:повторювати поки <умова> де умова базується на сенсорних подіях, таких як:<клавіша натиснута?>.<доторкається до межі?>.<доторкається до іншого спрайта?>.<гучність більше (10)> (мікрофон).<таймер більше (5)>.<кольорів доторкається?>. ЯК ЦИКЛ З УМОВОЮ-СЕНСОРОМ РЕАГУЄ НА ЗОВНІШНІ ПОДІЇ ЧИ ДІЇ КОРИСТУВАЧА?
ЯК ЦИКЛ З УМОВОЮ-СЕНСОРОМ РЕАГУЄ НА ЗОВНІШНІ ПОДІЇ ЧИ ДІЇ КОРИСТУВАЧА?Як він працює: Цикл виконує дії доти, поки вказана умова НЕ стала істинною.🔁 Наприклад:повторювати поки <не доторкається кольору> перейти до випадкової позиції. якщо на межі, відбити.🎯 Кіт буде рухатися, доки не торкнеться кольору. Як тільки торкнеться – цикл зупиниться.
Умова. Реакція<клавіша натиснута?>Реагує на натискання користувачем клавіш.<доторкається до краю>Реагує на межі сцени.<гучність більше>Реагує на шум або мову через мікрофон.<доторкається до кольору>Реагує на контакт із певним кольором. Як він реагує на дії користувача?Цикл з умовою-сенсором постійно перевіряє, що відбувається в грі: ЯК ЦИКЛ З УМОВОЮ-СЕНСОРОМ РЕАГУЄ НА ЗОВНІШНІ ПОДІЇ ЧИ ДІЇ КОРИСТУВАЧА?
Приклад 1: Стрибок за натиском клавіші.завжди: якщо <клавіша вгору натиснута>: змінити y на 10. Реакція на дію користувача (натискання клавіші). Приклад 2: Анімація з таймером.скинути таймер:повторювати поки <таймер < 5>: змінити костюм. чекати (0.2) сек. Реагує на час, що минув від запуску. ЯК ЦИКЛ З УМОВОЮ-СЕНСОРОМ РЕАГУЄ НА ЗОВНІШНІ ПОДІЇ ЧИ ДІЇ КОРИСТУВАЧА?✅ Переваги таких циклів:🎮 Дають можливість зробити інтерактивні ігри.🔄 Реалізують реакцію на зміну стану об'єктів.⌚ Дозволяють керувати часом, діями та подіями без точного знання кількості повторень.
1. Умова ніколи не змінюється.❌ Помилка:повторювати поки <змінна = 5>: змінити [інша змінна] на 1. Проблема: змінна, яку перевіряє умова, не змінюється – цикл може ніколи не завершитись або виконатися лише 1 раз, залежно від початкового стану.✅ Рішення: завжди оновлюйте або змінюйте те, що перевіряється в умові. ЯКІ ТИПОВІ ПОМИЛКИ ТРАПЛЯЮТЬСЯ ПРИ ВИКОРИСТАННІ ВКЛАДЕНИХ ЦИКЛІВ ТА УМОВ?2. Зовнішній цикл працює, а внутрішній – ніколи.❌ Помилка:повторити (5): якщо <умова хибна>: повторити (10): рух на 10 кроків. Проблема: внутрішній цикл не запускається, бо умова хибна. Усі 5 разів – він просто ігнорується.✅ Рішення: переконайтеся, що умови всередині вкладених циклів можуть виконуватись.
3. Змішування завжди з умовами без контролю.❌ Приклад:завжди: якщо <умова істинна>: повторити (10). рух на 10 кроків. Проблема: якщо умова істинна завжди, цикл виконується багато разів поспіль, створюючи візуальні зависання.✅ Рішення: додайте затримку (чекати (0.1) сек) або змінюйте умову. ЯКІ ТИПОВІ ПОМИЛКИ ТРАПЛЯЮТЬСЯ ПРИ ВИКОРИСТАННІ ВКЛАДЕНИХ ЦИКЛІВ ТА УМОВ?
ЯКІ ТИПОВІ ПОМИЛКИ ТРАПЛЯЮТЬСЯ ПРИ ВИКОРИСТАННІ ВКЛАДЕНИХ ЦИКЛІВ ТА УМОВ?4. Занадто складна вкладеність без потреби. Надмірно вкладені цикли, наприклад:повторити (5): повторити (5): повторити (5): ... Програма важко читається і важко відстежити, що саме відбувається.✅ Рішення: якщо можна, винесіть частину логіки в окремі скрипти або скоротіть вкладеність.
ЯКІ ТИПОВІ ПОМИЛКИ ТРАПЛЯЮТЬСЯ ПРИ ВИКОРИСТАННІ ВКЛАДЕНИХ ЦИКЛІВ ТА УМОВ?5. Умова спрацьовує лише короткий час.❌ Приклад:завжди: якщо <клавіша натиснута>: повторити (10). рух на 10 кроків. Проблема: користувач натискає клавішу дуже коротко, тому цикл не встигає виконатись або спрацює тільки раз.✅ Рішення: використовуйте цикл з умовою, наприклад:повторювати поки <не натиснута клавіша>або відловлюй стан за допомогою змінної-флагу.
6. Вкладений цикл блокує зовнішній. Якщо у внутрішньому циклі довго тривають дії (з чеканням), зовнішній цикл "зависає", поки внутрішній не завершиться. Поради, як уникати помилок: Завжди розумій, яка умова повинна змінитись, щоб цикл зупинився. Не використовуй вкладені цикли без чіткої потреби. Перевіряй умови в симуляції. Додавай чекати (0.1) сек, щоб уникнути надшвидких повторень. Використовуй змінні для контролю стану циклів. ЯКІ ТИПОВІ ПОМИЛКИ ТРАПЛЯЮТЬСЯ ПРИ ВИКОРИСТАННІ ВКЛАДЕНИХ ЦИКЛІВ ТА УМОВ?
Приклад послідовності:повторити (10):коли натиснуто зелений прапорець.змінити [лічильник v] на 1.сказати [Привіт] на (1) сек.встановити [лічильник v] в 0. Знайди помилку!Завдання: складіть скрипт в середовищі програмування Scratch за правильною послідовністю команд: Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/ Спрайт 10 разів скаже "Привіт", кожного разу на 1 секунду.
Завдання: в середовищі програмування Scratch створено скрипт, який повинен зупиняти рух спрайта, якщо він торкнеться червоного кольору, але спрайт не зупиняється. Виправте помилку в скрипті: Знайдіть помилку в алгоритмі. Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Проаналізуйте та змініть вкладену конструкцію. Завдання: складіть скрипт в середовищі програмування Scratch, та змініть його так, щоб він рухався до краю, а не до кульки. Скрипт: повторювати поки <не торкається [кульки] ?>: ковзати 3 сек до <[кульки]>. кінець. Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Власний скрипт. Завдання. В середовищі програмування Scratch створіть скрипт, де спрайт:переміщається по сцені до тих пір, поки не торкнеться зеленого прапора.перевіряє кожні 5 кроків: чи торкається іншого спрайта, і якщо так – змінює колір. Умова: скрипт повинен мати: вкладений цикл, умову з сенсором, змінні (наприклад, для підрахунку кроків або зіткнень). Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Квест: Знайдіть іграшку!Сюжет. Кіт шукає м’ячик у кімнаті. Він рухається по сцені, перевіряючи кольори, об'єкти, і рахує, скільки кроків зробив, поки не знайде іграшку. Підказки для реалізації:1. Вкладений цикл: "Поки не знайде → досліджує":повторювати поки <не торкається [м’ячика]>. Це "вкладення верхнього рівня" – кіт шукає, поки не знайде. Усередині – рух, перевірка, рахунок, поведінка на перешкоди. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Квест: Знайди іграшку! 2. Умова з сенсором: "торкається предмета → змінює напрямок"Якщо кіт торкається стіни або краю сцени, треба:поворот на випадковий кут: якщо <торкається [стіни v] або <торкається [краю]>> тоді:повернути на (випадкове значення від -90 до 90).або навіть змінити напрямок:встановити напрямок на (випадкове значення від 0 до 360). 3. Змінна: "кількість спроб". На початку обов’язково:встановити [кількість спроб v] в (0). Щоразу, коли кіт рухається:змінити [кількість спроб v] на (1). Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю.
Робот-дослідник на Марсі. Сюжет: робот досліджує поверхню Марсу. Він: Рухається по квадратній сітці (вкладений цикл), Зупиняється, якщо сенсор виявив "камені" або "воду" (колір або інший спрайт), Збирає дані (рахує, скільки елементів знайдено кожного типу). Завдання: в середовищі програмування Scratch створіть скрипт пошуку. Підказки:1. Рух по сітці – вкладені цикли.повторити (рядків) [зовнішній цикл по Y]. повторити (стовпців) [внутрішній цикл по X]. перевірити дані (сенсори, кольори, спрайти). перемістити на (один крок вправо). кінець. повернути в початок ряду. зсунутись вниз на один рядок.кінець.
Робот-дослідник на Марсі.2. Виявлення ресурсів – умови з сенсором. Виявлення за кольором:якщо <торкається кольору [сірого]> тоді: змінити [каміння v] на (1).інакше якщо <торкається кольору [синього]> тоді: змінити [вода v] на (1). Виявлення за спрайтами:якщо <торкається [спрайт_камінь]> тоді: змінити [каміння v] на (1). Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Завдання: створіть скрипт, де спрайт (олівець або пензлик):за допомогою вкладених циклів малює геометричний візерунок, схожий на павутинку, сніжинку або мандалу;виконує рух, поворот, зміну кольору;у кожному зовнішньому циклі – новий радіальний промінь. Магічний візерунок-павутинка. Посилання на середовище програмування Scratch:https://scratch.mit.edu/
Структура роботи:1. Зовнішній цикл – кількість променів/пелюсток (наприклад, 12 разів):повторити (12):2. Внутрішній цикл – малювання однієї пелюстки або променя з ліній і поворотів:повторити (5): перемістити на (20). повернути на (30). Після кожної пелюстки:повернись на центр сцени,повернись на новий кут:повернути на (30). Результат – симетричний орнамент, сніжинка або зірка. Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Магічний візерунок-павутинка.
Етапи роботи.1. Підготовка середовища Scratch: Відкрийте https://scratch.mit.edu. Створіть новий проєкт. Видаліть кота, якщо він не потрібен, або замініть на спрайт-олівець. Перейдіть до розширень і додайте "Олівець (Pen)".2. Встановіть початкові налаштування: Перетягніть блок “Коли натиснуто зелений прапорець”. Додайте такі команди: - Очистити. - Перейти в x: 0 y: 0. - Опустити олівець. ПРАКТИЧНА РОБОТА. ПОБУДОВА ОРНАМЕНТІВ НА ОСНОВІ ВКЛАДЕНИХ ЦИКЛІВ.
Результат збережіть у файлі з розширенням .sb3 та надішліть вчителю. Посилання на середовище програмування Scratch:https://scratch.mit.edu/ Етапи роботи.3. Малювання орнаменту з вкладеними циклами:повторити (12) // зовнішній цикл – кількість "пелюсток". повторити (12) // внутрішній цикл – малюнок всередині пелюстки. перемістити на (20). повернути на (30). кінець. повернути на (30) // повертає спрайт для наступного променя. змінити колір олівця на (10).кінець.5. Додайте кольори: перед малюванням всередині циклу додайте блок “встановити колір олівця в (випадковий)”. ПРАКТИЧНА РОБОТА. ПОБУДОВА ОРНАМЕНТІВ НА ОСНОВІ ЦИКЛІВ.
