Алгоритмы работы с целочисленными данными
§ 19 учебника Котова и Лапо 2025 года: тип int, целочисленное деление //, остаток %, перевод единиц, цифры числа и проверка отрицательных значений.
Конспект урока
Таймер показывает 137 секунд. Сколько это полных минут и сколько секунд останется? Ответ можно получить двумя короткими командами Python. На этом уроке научимся не только вычислять, но и проверять результат.
Цель и источник
Основа урока — § 19 «Реализация алгоритмов работы с целочисленными данными», печатные страницы 135–140 учебника В. М. Котова и А. И. Лапо (2025). Вопросы 1–4 на с. 139 помогают проверить определения; упражнения на с. 139–140 дают перевод метров, анализ двузначного числа и новые задачи. Здесь приведены собственные числа и формулировки MediaSchool, а ссылки на упражнения оставлены для работы с учебником.
К концу урока ты сможешь выбрать между // и %, объяснить целое частное и остаток, написать программу перевода единиц и проверить её на двух входах. Сначала делай письменный прогноз, затем сверяй ответ. Отдельный рабочий лист и выходной билет находятся в материалах урока.
Целые числа и операции
Для целых чисел используют тип int. Кроме +, -, * и **, в § 19 вводятся две операции:
| Запись Python | Значение для 17 и 3 | Что находим |
|---|---|---|
17 // 3 | 5 | целочисленное частное: пять полных троек |
17 % 3 | 2 | остаток после этих пяти троек |
Проверка: 17 = 3 * 5 + 2. Это частный случай связи a = b * (a // b) + a % b при b != 0. Операция / работает иначе: 18 / 3 даёт 6.0, то есть результат типа float, даже если число разделилось нацело. При нулевом делителе // и % вызывают ZeroDivisionError.
Минуты и секунды: прогноз до запуска
До раскрытия результата запиши, сколько полных минут и секунд получится при c = 137 и c = 24:
c = int(input('c = '))
m = c // 60
s = c % 60
print(m, s, sep=':')
При 137 полных минут 2, остаётся 17 секунд: строка, напечатанная print, — 2:17. При 24 полных минут 0, остаток 24: строка — 0:24. Время здесь задано неотрицательным целым числом секунд. Приглашение c = и набранное человеком число не считаем частью строки print.
Сравни с примером 19.3 учебника на с. 136–137. Запись sep=':' задаёт разделитель между двумя аргументами print, она не добавляет нуль перед одиночной цифрой: для c = 125 получится 2:5, а не 2:05. Форматирование часов обсудим отдельно.
Перевод метров
Предскажи результат для d = 2345. Полные километры: d // 1000, оставшиеся метры: d % 1000. Поэтому ответ 2 км 345 м, проверка 2 * 1000 + 345 = 2345.
d = int(input('d = '))
k = d // 1000
m = d % 1000
print(k, 'км', m, 'м')
Здесь при d = 2345 только строка print — 2 км 345 м. При d = 999 получим 0 км 999 м. Это отвечает на вопрос упражнения 1 с. 139: где нужны // и %. Не используй / для числа полных километров.
Десятки и единицы
Для положительного двузначного числа a последнюю цифру даёт a % 10, число десятков — a // 10. Для a = 42 это 2 и 4. Чтобы поменять цифры местами, составь b = (a % 10) * 10 + a // 10; получишь 24.
Ограничение важно: при a = 40 вычисление даёт число 4, потому что ведущий нуль в целом числе не сохраняется. При a = 125 та же формула даст 62: 125 % 10 = 5, 125 // 10 = 12, 5 * 10 + 12 = 62. Программа примера 19.4 рассчитана на положительное двузначное число, поэтому такой результат для трёхзначного входа не означает перестановку всех цифр. Вопросы упражнения 2 с. 140 учебника помогают обнаружить границу алгоритма.
Отрицательные числа: правило Python
Для положительных чисел остаток похож на привычное школьное деление. При отрицательных входах ориентируйся на точное правило Python, а не на догадку по знакам. Целочисленное частное a // b округляет частное вниз. Ненулевой результат a % b имеет знак делителя b. Всегда проверяй a = b * (a // b) + a % b.
a | b | a // b | a % b | Проверка |
|---|---|---|---|---|
| 17 | 3 | 5 | 2 | 17 = 3 * 5 + 2 |
| -17 | 3 | -6 | 1 | -17 = 3 * (-6) + 1 |
| 17 | -3 | -6 | -1 | 17 = (-3) * (-6) - 1 |
| -17 | -3 | 5 | -2 | -17 = (-3) * 5 - 2 |
Это значения примера 19.1 учебника на с. 135–136. Запись -17 // 3 равна -6, а не -5: число -5.666... округляется вниз. При делителе -3 остаток может быть отрицательным. Для перевода времени и длины выше мы сознательно берём неотрицательные входы.
Личная работа и проверка
В рабочем листе выполни Л1–Л4: соотнеси частное с остатком, заполни трассу для секунд, исправь перевод метров и проверь цифры числа. Сначала запиши прогноз и объяснение, затем проверь запуском Python при наличии компьютера. Если застрял, возьми карточку помощи: в ней другие числа, готовых ответов рабочего листа нет. Быстро закончившим доступна дополнительная практика, включая отрицательный делитель.
После листа выполни отдельный выходной билет Б1–Б3 без подсказок. Учитель соберёт его до показа ключей. Ошибку после разбора исправь на новом примере: меняй входное число и снова проверяй восстановлением исходного значения.
По учебнику и дома
Обязательно ответь на вопросы 1–4, с. 139 и выполни Д1–Д2 домашней карточки. Вопросы касаются типа целых данных, операций, результата // и знака результата % для разных знаков. Дополнительно, по желанию: в упражнении 1, с. 139, сверь размещение // и %; в упражнении 2, с. 140, объясни случаи a = 40 и a = 125; упражнение 3 и остальные задачи с. 140 переносят тот же приём на цифры, массу, площадь, размер файла и старорусские меры. Домашняя карточка задаёт собственный перенос и два теста; точные коэффициенты в ней напечатаны.
Главное правило: выбирай // для числа полных групп, % для того, что осталось, и проверяй равенством a = b * q + r. Для отрицательных чисел дополнительно проверяй правило знака остатка в Python.
10 вопросов по теме «Алгоритмы работы с целочисленными данными». Выбери ответ, прочитай объяснение и попробуй ещё раз, если ошибся.
Открыть отдельноВопрос 1 из 10
ТренировкаБез отметки и ограничения времени. Первый ответ учитывается отдельно от исправлений. При обновлении страницы ответы сбросятся.
Скачать и открыть
Материалы урока
9 материаловПодготовка к уроку
3 материала· для учителей
23 слайда по § 19: целое частное //, остаток %, перевод единиц, цифры числа, знак остатка и личный прогноз.
Презентация · MediaSchool
45 минут: прогноз частного и остатка, перевод секунд и метров, отдельный билет, помощь, ключи и маршрут без оборудования.
Методичка · MediaSchool
Точные значения Л1–Л4, ответы билета, резерва и домашней, диагностика ошибок // и %.
Методичка · MediaSchool
Рабочие листы и практика
5 материалов· для учеников
Л1–Л4: группы, таймер, перевод метров и десятки/единицы; письменный прогноз до запуска.
Рабочий лист · MediaSchool
Отдельные числа 19 и 82, пошаговое восстановление исходного значения.
Рабочий лист · MediaSchool
Резерв: отрицательные числа, размер файла, цифры и нулевой делитель.
Рабочий лист · MediaSchool
Личный итог Б1–Б3: секунды, метры и новое отрицательное число.
Рабочий лист · MediaSchool
Своя программа перевода массы, два входа и обратная проверка.
Рабочий лист · MediaSchool
Проверка знаний
1 материал· для учеников
10 вопросов с объяснениями и повторной попыткой.
Проверочная
От сообщества
Материалы сообщества0
Дополнения от учителей к этому уроку. Проверены модерацией, но не являются редакционным контентом MediaSchool.
Поделитесь первым материалом
Рабочий лист, презентация или методичка помогут другим учителям подготовиться к уроку.
Комментарии
Войдите, чтобы оставлять комментарии.
Пока нет комментариев. Будьте первым!