Shanraq.org Shanraq.org
Первая программа: состояние становится кодом
Общество

Информатика: создаём своего цифрового помощника Урок 27 из 38

Первая программа: состояние становится кодом

Первое изменение состояния помощника станет настоящей программой: предскажем её вывод и увидим, что именно хранит переменная.

Где мы на карте

Это урок 27 из 72 и часть блока Python (уроки 27–38). Опорная схема показывает проверяемые переходы. Продолжаем бумажный договор версии 0.3: пять исходов напоминания и исходные вымышленные задачи.

Первая программа: состояние становится кодом

Ситуация и вопрос

В бумажной версии вы переложили карточку done из false в true. Компьютер не видит карточек и не понимает слово «выполнено» сам по себе. Как сказать ему это несколькими строками так, чтобы другой ученик получил ровно тот же результат? Начинаем с одной переменной, прежде чем собирать всю программу.

Новые слова без пропусков

Программа — записанная последовательность инструкций для компьютера. Исходный код — её текст, который мы можем читать и менять. Python — язык с правилами записи этого текста; файл .py содержит код. Интерпретатор выполняет его инструкции. Переменная — имя, связанное с текущим значением: в done = False знак = присваивает значение, а не спрашивает о равенстве. False и True — логические значения; их регистр важен. print показывает значение, но само по себе не сохраняет его в файле.

Опорный сигнал

Вход → проверка правила → изменение состояния → наблюдаемый результат. Покажите пальцем, на каком шаге программа читает данные, где сравнивает их с договором и где только сообщает результат. Если шага не видно на схеме, найдите его в коде и добавьте в собственную трассу.

Разбираем шаг за шагом

Сначала запишите на бумаге «до: False, после: True». Запустите пример ниже и сравните строки. Первая строка связывает done с False; первая печать видит именно это значение. Присваивание done = True меняет связь имени, и вторая печать видит новое значение. Закройте программу и запустите заново: она снова начнёт с False. Так вы увидите границу между состоянием во время работы и сохранёнными данными.

Предскажите и проверьте

Закройте блок с выводом. По строкам проследите значения имён и напишите точный ожидаемый текст, включая регистр и порядок строк. Только затем выполните код из каталога step-03 командой python3 и сравните посимвольно. Поменяйте один вход; до запуска запишите новый прогноз. Если результат отличается, найдите первую строку расхождения, а не подгоняйте ответ задним числом.

done = False
print("Before:", done)
done = True
print("After:", done)

Ожидаемый вывод

Before: False
After: True

Поймайте ошибку

Если написать false с маленькой буквы, Python будет искать переменную с таким именем и сообщит NameError. Если заменить = на ==, получится вопрос о равенстве, а не изменение состояния. Исправляйте ошибку по её первой понятной строке и снова предсказывайте результат до запуска.

Изменение проекта

Начните отдельный файл assistant.py в своей рабочей копии. Пока он показывает состояние одной вымышленной задачи, а не изменяет tasks.json. Сравните вывод с бумажной карточкой версии 0.3.

Задание и доказательство

Создайте свой first_state.py с двумя вымышленными задачами. Выведите их начальные состояния, отметьте только вторую выполненной и снова выведите обе. Перед запуском составьте таблицу из четырёх ожидаемых значений. Докажите, что первая задача не изменилась. Затем повторите запуск: объясните, почему отметка второй задачи не пережила закрытие программы.

Перенос в новую ситуацию

Похожая переменная есть в счётчике шагов игры: steps = 0, затем steps = 1. Чем отличается новое значение счётчика от печати числа на экране? Назовите действие, которое понадобится, чтобы шаги сохранились после перезапуска.

Возврат через 1, 7 и 30 дней

Через 1 день восстановите правило и один граничный пример без страницы. Через 7 дней объясните ошибку в новом примере однокласснику. Через 30 дней повторите тест проекта, проверьте, что прежние записи и вывод сохранились, и снова перенесите правило на другую задачу.

Следующий урок

Далее: Ввод, вывод и типы данных

Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом

Проверить доказательство проекта

Запишите наблюдение, объяснение, исправление ошибки и изменение своего проекта. Модель укажет первую перепутанную или недоказанную связь, но не даст готовый ответ.

Чтобы проверить, нужно войти. Войти

Комментарии (0)

Пока нет комментариев. Будьте первым.