Програмування для початківців: робот і блоки

Складіть програму з блоків і дивіться, як робот виконує її на сітці крок за кроком. Поруч із блоками та сама програма записана на Python. Рівні проведуть вас крізь послідовності, цикли, умови, цикли while і функції.

Нове поняття

Програма — це список інструкцій. Робот виконує їх одну за одною, згори вниз, і робить саме те, що в них написано: нічого не вгадує. Тому порядок має значення. Біля кожного блока є його рядок на Python: «йти вперед» — це move(), «повернути ліворуч» — це turn_left().

У Python

move()
move()
turn_left()
move()

Завдання

Приведіть робота до прапорця. Торкніться «йти вперед» у меню блоків: блок додасться до програми. Коли програма готова, натисніть «Запустити».

Підказка

Порахуйте клітинки між роботом і прапорцем. Кожне «йти вперед» переміщує робота на одну клітинку в напрямку зеленої стрілки.

Карта

Складіть програму й натисніть «Запустити».

Програма з блоків

Блоків: 0

Меню блоків

Клавіатура: новий блок вставляється після вибраного; вибраний блок переміщується клавішами Alt + стрілка, видаляється клавішею Delete; Ctrl + Z скасовує останню зміну.

Та сама програма на Python

Це ваша програма у вигляді тексту. Команди на кшталт move() і turn_left() належать цій грі; for, while, if і def — це справжній Python.

Поки що тут порожньо. Коли ви додасте блоки, тут з’являться їхні рядки.

Навчальна гра; ваша програма й прогрес залишаються у вашому браузері. Як це розраховується і звідки дані

Чого ви тут навчитеся

Програма — це точний перелік інструкцій. Комп’ютер нічого не вгадує: він робить саме те, що написано в програмі, навіть коли це очевидно безглуздо. Тож програмування — це насамперед уміння розбити завдання на дрібні, однозначні кроки та розставити їх у правильному порядку. Це логіка програмування, і вона однакова в усіх мовах.

Послідовність: команди виконуються одна за одною, згори вниз. Порядок має значення: «вперед, ліворуч» приведе робота в інше місце, ніж «ліворуч, вперед».

Цикли: замість шести однакових блоків «вперед» досить одного блока «повторити 6 разів» з одним кроком усередині. У Python це цикл for i in range(6):. Цикли можна вкладати один в один: чотири рази «зробити три кроки й повернути» — це обхід квадрата.

Умови: блок «якщо» виконує свої блоки лише тоді, коли умова справджується, наприклад «якщо я стою на монеті, підбери її». Блок «якщо – інакше» обирає один із двох шляхів. Програма з умовами працює і на карті, якої ви наперед не знаєте, тому на цих рівнях кілька карт.

Цикли while: блок «доки» повторює свої блоки, доки умова справджується, наприклад «доки шлях попереду вільний, іди вперед». На відміну від «повторити N разів», ви наперед не знаєте, скільки разів він виконається. Якщо умова ніколи не перестане справджуватися, вийде нескінченний цикл — одна з найпоширеніших помилок.

Функції: іменований шматок програми, який можна використовувати знову й знову. Коли ви раз зробили «розвернутися», один блок викликає її. Програма стає коротшою й читабельнішою, а виправлення в одному місці діє всюди.

Налагодження (дебагінг): кожен програміст помиляється; уміння в тому, щоб помилки знаходити. Запустіть програму покроково й стежте, де робот робить щось інше, ніж ви очікували. Блок, що спричинив помилку, підсвічується, а повідомлення пояснює, що сталося.

Чому блоки, а поруч Python: у блоках не можна зробити описку чи забути дужку, тож ви зосереджуєтеся лише на логіці. Python поруч показує, що це та сама програма, записана текстом: блоки всередині циклу в коді мають відступ, а рядок над ними закінчується двокрапкою.

Що далі: коли робот перестане вас дивувати, спробуйте самі писати на Python, наприклад за офіційним підручником на python.org, який починається з тих самих for, while, if і def. Якщо ви радше хочете робити ігри й анімації, продовжуйте зі Scratch, де використовуються такі самі блоки.

Поширені запитання

З якого віку діти можуть вчитися програмувати?

Ця гра розрахована приблизно на дітей від десяти років і підійде також дорослим початківцям. Молодші діти впораються з першими розділами за допомогою дорослого; достатньо вміти читати. Усі рівні відкриті, тож той, хто знає основи, може переходити далі.

Це безкоштовно й чи потрібен обліковий запис?

Це безкоштовно й без реєстрації. Браузер запам’ятовує ваш прогрес, тож на тому самому пристрої ви можете повернутися до рівня.

Що таке Python?

Python — одна з найпоширеніших мов програмування. Її використовують в аналізі даних, науці, веб-сайтах, автоматизації та штучному інтелекті, а початківці люблять її за те, що вона легко читається. Програма поруч із блоками — справжній Python; лише команди робота, як-от move(), належать цій грі.

Чим це відрізняється від Scratch?

Scratch — це відкритий майданчик, де з блоків ви будуєте власні ігри та анімації з персонажами. Тут ви розв’язуєте головоломки з чіткою метою, які крок за кроком знайомлять із такими ідеями, як цикли, умови й функції, а поруч із блоками бачите ту саму програму на Python. Одне чудово доповнює інше.

Що робити, коли я пройду всі рівні?

Спробуйте самі писати на Python: офіційний підручник на python.org починається з тих самих if, for, while і def, які ви знаєте з блоків. Якщо вам подобається творити, продовжуйте зі Scratch. І спробуйте проходити рівні з меншою кількістю блоків.

Чи надсилається моя програма кудись?

Ні. Програма виконується у вашому браузері й зберігається лише в його сховищі, щоб ви знайшли її наступного разу. Вона нікуди не надсилається, і ніхто інший її не бачить.

Як це розраховується і звідки дані

Як розраховується результат

  1. Програма складається з блоків. Кожному блоку відповідає один або кілька рядків Python, які створюються поруч, тож під час виконання програми блок і його рядок підсвічуються разом.
  2. Робот живе на сітці не більше ніж 8 × 8 клітинок. Клітинка може бути вільною, стіною, монетою або метою з прапорцем; край сітки — це стіна. Робот стоїть на одній клітинці й дивиться в один із чотирьох напрямків.
  3. Коли ви натискаєте «Запустити», увесь хід виконання спершу обчислюється, а потім відтворюється. Кожна виконана команда — це крок, так само як і кожна перевірена умова («Чи вільний шлях попереду? Так»). Та сама програма на тій самій карті завжди виконується однаково.
  4. Рівень пройдено, коли програма завершується без помилки, робот стоїть на меті (якщо вона є на карті) і не лишилося жодної монети. Деякі рівні мають дві або три карти, і програма має пройти всі: карта на екрані виконується наочно, решту перевіряють непомітно, а якщо якась із них не проходить, гра перемикається на неї й показує причину.
  5. Виконання зупиняється з помилкою на блоці, який її спричинив: робот вдарився б об стіну, підібрав би монету там, де її немає, або програма порожня. Після 1000 кроків виконання зупиняється як нескінченний цикл, а функція, що викликає сама себе глибше ніж на 50 рівнів, зупиняється як нескінченний виклик.
  6. Деякі рівні дозволяють лише обмежену кількість блоків. Рахується кожен блок, зокрема й ті, що всередині циклів, умов і функцій; блок, у якому лежать інші блоки, рахується один раз.
  7. Програма, над якою ви працюєте на кожному рівні, і список пройдених рівнів зберігаються лише у сховищі вашого браузера.

Припущення та обмеження

  • Робот знає лише 4 команди (йти вперед, повернути ліворуч, повернути праворуч, підібрати монету) і 5 умов (шлях вільний попереду, ліворуч і праворуч, стоїть на монеті, перебуває на меті), кожну з яких можна й заперечити.
  • Немає змінних, обчислень із числами та власних функцій із параметрами. Рівень сам задає кожну функцію (її назву й призначення); ви будуєте лише те, що вона робить.
  • Python доступний лише для читання: він показує, як програма виглядає у вигляді тексту, але вводити його поки що не можна. Команди на кшталт move() чи path_ahead() — це функції цієї гри, а не частина Python, тож сам по собі код поза грою не запрацює.
  • Імена в Python англійські (move, turn_left, pick_coin…), як у справжніх програмах; блоки відображаються мовою сторінки.
  • Робот робить саме те, що написано в програмі; він нічого не вгадує й не виправляє. Це не вада: це головне, чого тут навчаються.

Карти й рівні ми придумали самі як вправи; це не дані. Ідея робота, якого програма веде сіткою, походить від Karel the Robot, якого Richard E. Pattis описав у 1981 році як перший урок програмування.

Джерела даних і період, якого вони стосуються

Кожне число, з якого калькулятор починає або на основі якого рахує, походить з одного з джерел нижче. Назви рядів наведено так, як їх називає видавець. У кожному рядку вказано період, до якого належать дані, і, де ми це фіксуємо, день завантаження. Офіційні дані на момент публікації можуть бути місячної давності, тому перед рішенням перевірте актуальне значення.

Офіційні
Оприлюднено центральним банком, статистичною службою, Європейським Союзом або іншим публічним органом.
Наукові або галузеві дані
Набір даних університету, постачальника індексів, галузевої асоціації або постачальника даних.
З преси
Показник офіційного органу, який ми знаємо лише з преси і не перевіряли в першоджерелі. Сприймайте його як приблизний.
Приклад
Наше кругле число, а не статистика. Замініть його своїм.

Основи програмування та мова Python

ДжерелоПеріодВид
Python Software FoundationThe Python Tutorial, 4. More Control Flow Tools (if, for, range, def)
чиннезавантажено 2026-10-19Наукові або галузеві дані
Python Software FoundationThe Python Language Reference, 8. Compound statements (if, while, for, function definitions)
чиннезавантажено 2026-10-19Наукові або галузеві дані
Richard E. PattisKarel the Robot: A Gentle Introduction to the Art of Programming (John Wiley & Sons, 106 pages)
1981завантажено 2026-10-19Наукові або галузеві дані

Текст методики востаннє перевірено 2026-10-06. Дані востаннє завантажено 2026-10-19. Як ми працюємо з даними та джерелами