Проверка разветвляющегося алгоритма на границе условия

Автор: Ибрагимов Ислам Арбиевич

Организация: МБОУ «Лингвистическая школа им. Ю. Д. Дешериева»

Населенный пункт: Чеченская Республика, г. Грозный

Информатика | 7 класс | 20 минут

Учебная задача

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

Приём трёх соседних значений

Учебная модель описывает упаковку карточек. В одну маленькую коробку помещается не более восьми карточек; если карточек больше, нужна большая. На вход подаётся целое число n от 1 до 20. Алгоритм выбирает только размер одной коробки. Педагог показывает ошибочную запись: «если n < 8, то маленькая, иначе большая». Для 7 и 9 ответ верный; значение 8 обнаруживает ошибку. Исправление знака на ≤ должно быть объяснено словами «не более восьми».

Подготовка и порядок работы

Достаточно рабочего листа и карандаша; компьютер не обязателен. Сначала дети читают условие и подчёркивают включённую границу. За 4 минуты заполняют ожидаемые ответы. Следующие 5 минут отводятся на ручную трассировку: проверку сравнения и выбор ветви. Ещё 4 минуты пары обсуждают найденное расхождение. Последние 7 минут занимает самостоятельный перенос на новое условие с другой границей.

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

Границы применения

Приём предназначен для одной числовой границы и целочисленного ввода. Значения 0 и 21 находятся вне заданного диапазона; требование обрабатывать их в этой модели не вводится. Три успешных теста сами по себе не доказывают правильность произвольной программы. Для данного короткого алгоритма дополнительно проверяется, что условие и обе ветви точно выражают правило задачи.

Рабочий лист

Фамилия и имя __________________________ Дата __________

Задание 1 Ожидаемый ответ

В маленькую коробку входит не более 8 карточек. Для большего количества нужна большая. Вход n является целым числом от 1 до 20. Заполни второй столбец по условию, ещё не выполняя алгоритм.

Вход n

Ответ по условию

Верно ли n < 8

Ответ алгоритма

7

 

 

 

8

 

 

 

9

 

 

 

Ошибка в алгоритме: если n < 8, вывести «маленькая»; иначе вывести «большая». Заполни последние два столбца. Обведи строку, где ответы разошлись. Объясни, какое слово в условии определяет включение границы.

Моё объяснение __________________________________________________

Задание 2 Исправление и повторная проверка

Исправь только знак сравнения: если n ____ 8, вывести «маленькая»; иначе вывести «большая». Выполни исправленный алгоритм для 7, 8 и 9. Запиши ответы в том же порядке и объясни, почему обе ветви соответствуют условию.

Ответы _________________________________________________________

Почему проверки только для 2 и 15 недостаточно, чтобы обнаружить ошибку n < 8? __________________________________________________

Задание 3 Перенос на новое правило

Длина файла k задана целым числом от 1 до 30 мегабайт. Если длина меньше 12 мегабайт, файл отправляют одним способом; во всех остальных случаях выбирают другой. Ученик записал: «если k ≤ 12, вывести А; иначе вывести Б».

1. Самостоятельно выбери три соседних значения около границы. Для каждого запиши ожидаемую букву и результат ошибочного алгоритма.

2. Найди неверный знак и исправь его. Объясни, к какой ветви должно относиться значение 12.

3. Запиши, какие входные значения здесь допустимы. Можно ли требовать ответ для k = 0, если такого требования в условии нет?

Мои тесты и вывод _________________________________________________

_________________________________________________________________

Ключ и проверка рассуждения

n

По условию

n < 8

Ошибочный ответ

7

маленькая

верно

маленькая

8

маленькая

неверно

большая

9

большая

неверно

большая

Словосочетание «не более восьми» включает число 8. Исправленный знак ≤ даёт ответы «маленькая, маленькая, большая». Для любого допустимого n не выше 8 помещаются в маленькую коробку; все остальные допустимые значения больше 8 и требуют большую. Тесты 2 и 15 не достигают границы и дают совпадения даже при ошибочном знаке.

Ответ к новому правилу

Подходящие тесты: 11, 12, 13. Ожидаемые ответы: А, Б, Б. Ошибочный алгоритм выдаёт А, А, Б. Следовательно, расхождение обнаруживается при k = 12; знак ≤ нужно заменить знаком <. Допустимы только целые числа от 1 до 30. Для 0 правила обработки не заданы. Ответ «А» при механическом выполнении записи не означает, что алгоритм проверен для расширенного диапазона.

Критерии самостоятельного переноса

За задание 3 можно получить 6 баллов: 1 балл за тесты 11, 12, 13; 1 балл за ожидаемые ответы; 1 балл за трассировку ошибочной записи; 1 балл за исправление знака; 1 балл за объяснение исключения границы; 1 балл за верное указание допустимого диапазона. Случайная ошибка в переписывании оценивается отдельно от объяснения ветви.

Перенос подтверждён в этом фрагменте, если ученик без подсказки выбирает граничный тест, исправляет знак и объясняет ответ при k = 12. Число баллов служит обратной связью, а не доказательством устойчивого владения тестированием. При затруднении педагог предлагает ещё одно правило с включённой границей и просит сначала произнести его словами.

Поддержка и дальнейшая работа

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

Методическая опора

Teach Computing. Create a program. Виды тестовых данных: обычные, граничные и ошибочные. https://teachcomputing.org/curriculum/key-stage-4/programming-part-4-subroutines/create-a-program (дата обращения 21.10.2026). Учебные условия и задания данной разработки составлены для описанного приёма.


Опубликовано: 22.10.2026
Мы сохраняем «куки» по правилам, чтобы персонализировать сайт. Вы можете запретить это в настройках браузера