
Информатика: создаём своего цифрового помощника Урок 48 из 72
Таблица, формула и проверяемый расчёт
Подсчитаем минуты вручную, в таблице и в Python — три способа должны дать одно число.
Где мы на карте
Урок 48 из 72, блок «Данные, таблицы и базы» (47–54). Мы продолжаем помощника 1.1 с тремя вымышленными задачами. В конце блока его записи будут храниться в локальном SQLite, а проверенные правила напоминаний останутся прежними.
Ситуация и вопрос
Четыре записи говорят: 20, 25, 15 и 10 минут. Один ученик уверенно пишет «60», другой — «70». Не голосуем: показываем правило сложения и проверяем каждое слагаемое.
Новые слова без пропусков
Электронная таблица хранит значения в ячейках: A1 — столбец A, строка 1. Формула вычисляет результат из выбранных ячеек, например =SUM(D2:D5); буква D здесь столбец минут в нашем CSV. Диапазон D2:D5 включает обе крайние ячейки. Сумма минут — 70; среднее четырёх наблюдений — 17,5 минуты. Среднее по записям не равно среднему по задачам или ученикам. Пустое значение и числовой ноль различаются.
Опорный сигнал
Прочитайте схему слева направо. Для каждой стрелки назовите вход, преобразование и проверку. Закройте третий шаг и предскажите его. Затем найдите соответствующую строку в CSV, SQL или отчёте: нарисованная стрелка не должна подменять реальные значения и связи.
Разбираем шаг за шагом
Сначала на бумаге получите 20+25+15+10=70. Затем импортируйте CSV в таблицу с разделителем-запятой и проверьте, что даты не стали непонятными числами, а минуты — текстом. В D6 запишите =SUM(D2:D5) и сравните с ручным итогом. Если интерфейс использует русские имена функций, найдите эквивалент СУММ и сохраните диапазон D2:D5. В Python sum читает тот же столбец. Если программа даёт 70, а таблица 60, найдите пропущенную строку, прежде чем менять данные.
Предскажите и проверьте
Сначала запишите ожидаемый вывод точно, включая порядок строк. Затем выполните код из папки step-05 и сравните посимвольно. Измените один вход и повторите цикл «предсказать — запустить — объяснить». Пример доказывает только заявленное правило: он не превращает учебные вымышленные данные в измерение реальных людей.
import csv
with open("study_sessions.csv", encoding="utf-8", newline="") as stream:
total = sum(int(row["minutes"]) for row in csv.DictReader(stream))
print(total)
Ожидаемый вывод
70
Поймайте ошибку
Копирование формулы ниже может сдвинуть диапазон. =SUM(D2:D4) пропустит s-04 и даст 60. Если CSV взят у незнакомого человека, строки, начинающиеся с =, могут трактоваться приложением таблиц как формулы; наш вымышленный файл контролируется нами, а чужой импорт требует отдельной осторожности.
Изменение проекта
Добавьте в журнал проекта контрольную сумму 70 минут и расчёт по четырём строкам. Не записывайте итог обратно в исходный CSV: иначе при следующем подсчёте итог может стать пятой «сессией».
Задание и доказательство
Предскажите результат =SUM(D2:D4) и укажите потерянную строку. Затем рассчитайте отдельно сумму для t-01 (45) и t-03 (25); докажите, что 45+25=70. Что означает ноль у t-02 — отсутствие записей или нулевое занятие?
Перенос в новую ситуацию
Для дневника чтения имеются минуты по четырём дням. Как отличить сумму времени за дни от среднего времени на одну запись? Почему число записей нужно назвать рядом со средним?
Возврат через 1, 7 и 30 дней
Через 1 день восстановите схему по памяти и назовите случай, где простая аналогия не работает. Через 7 дней объясните новую таблицу товарищу без текста и ответьте минимум на 7 из 10 вопросов итогового урока. Через 30 дней повторите импорт во временную папку и проверьте три задачи, четыре занятия, сумму 70 и неизменные напоминания. Запишите оставшийся непонятным термин и вернитесь к его первому определению.
Первоисточник для проверки
Следующий урок
Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом
Комментарии (0)
Войдите, чтобы оставить комментарий →
Пока нет комментариев. Будьте первым.