Натхненна: День програміста
Код для шкільного дзвінка
У центрі «Код для шкільного дзвінка» — не лише шкільний дзвін, блакитний потік коду й робот-помічник, а й те, що Соломійка вирішує діяти після події «програма дзвонила під час тихої години».
# Код для шкільного дзвінка
До презентації залишалося сім хвилин. На шкільному подвір’ї висів великий мідний дзвін, а від двох ноутбуків до нього тягнувся блакитний потік нулів, одиниць і золотих знаків. Поруч сидів круглоголовий робот Дзень, який мав стежити за новою програмою.
Соломійка з друзями автоматизувала шкільний розклад. Тепер дзвін мав сам повідомляти про початок уроків, перерви й завершення занять. Учитель інформатики пан Остап перевірив під’єднання, а чергова вчителька передала дітям затверджену таблицю часу.
— Усе готово! — повідомив робот, усміхнувшись на екрані.
Раптом, хоча урок ще тривав, блакитні цифри закрутилися вихором. Дзвін гучно вдарив тричі. Пес Бровко підскочив, птахи злетіли з дерева, а з відчинених вікон бібліотеки визирнули здивовані діти. Саме там проходила тиха година читання.
Соломійка негайно натиснула знак зупинки. Потік коду згас.
— Мабуть, робот переплутав урок із перервою, — припустив Марко.
Дзень засумував, але журнал показав: він точно виконав отриману команду. Інша учениця звинуватила старий дзвін, та той не міг ударити без сигналу. Причина ховалася в програмі або даних.
Спершу діти просто видалили дзвінок о першій годині. Але тоді програма мовчала й у день, коли саме в цей час завершувався гурток. Потім вони зменшили гучність. У класах сигналу майже не чули, зате в бібліотеці металевий звук усе одно лунав надто різко.
Соломійка розклала поруч три речі: паперовий розклад, шкільний годинник і журнал програми. Виявилося, ноутбук показував правильний час, але використовував стару таблицю минулого семестру. У ній перерва починалася о 13:00. У новому розкладі цей проміжок відвели для тихого читання, а час гуртків змінювався залежно від дня.
— Точна команда з неправильними даними теж дає неправильний результат, — пояснив пан Остап.
Діти ввели нову таблицю й додали дві перевірки. Перед кожним сигналом Дзень мав звірити запис із шкільним годинником та показати черговій учительці повідомлення: «Час і причина дзвінка». Лише після її ручного підтвердження дзвін міг озватися. Якщо відповіді не було, програма мовчала й повідомляла про пропуск.
Спершу систему випробували без справжнього звуку: робот піднімав синю картку замість удару. Під час тихої години він не показав нічого. Перед перервою назвав правильний час і дочекався підтвердження. Лише тоді дорослі дозволили короткий тест дзвона.
Наступного ранку Соломійка прийшла раніше. Дзень порівняв розклад із годинником, отримав підтвердження чергової вчительки — і мідний дзвін пролунав рівно вчасно. У бібліотеці до цього вже завершили читання, тож ніхто не здригнувся від несподіванки.
У 256-й день року програмісти відзначають професійне свято й силу точних команд, логіки та уяви. На виставці діти показали не лише робочу програму, а й невдалі спроби, стару таблицю та журнал помилки.
Соломійка залишила собі тільки чернетку з червоним знаком зупинки. Вона нагадувала: добрий код не просто працює сам, а дозволяє людині перевірити важливу дію й вчасно сказати «ще ні».
Завантажуємо календар історій…