Переведите условие в проверяемое действие
Предположим, нужно посчитать целые числа в заданном промежутке, которые делятся на три и не делятся на пять. Сначала уточните, включаются ли границы и какие значения допускаются. Затем разделите условия: принадлежность промежутку, первое свойство и второе ограничение. Не начинайте с кода, пока не можете объяснить правило обычными словами. Если в условии говорится о количестве, программа должна считать подходящие объекты, а не складывать их значения. Такие различия выглядят простыми, но именно они часто скрываются за внешне работающим решением.
Выбирайте примеры с разными свойствами
Один случай, где всё подходит, проверяет лишь часть логики. Нужны значения, удовлетворяющие обоим исходным признакам, только одному и ни одному. Для учебного правила полезно отдельно рассмотреть число, которое делится и на три, и на пять: оно должно быть исключено. Также проверьте границы промежутка и ситуацию без подходящих чисел. Набор примеров должен раскрывать структуру условия, а не состоять из случайных удобных значений. Чем яснее назначение каждого теста, тем проще понять, какая часть алгоритма работает неверно.
Сравните с маленьким ручным разбором
Для короткого промежутка выпишите все значения и отметьте подходящие. Это создаёт независимый ожидаемый результат, с которым можно сравнить программу. Если ожидание вычислено тем же ошибочным способом, проверка теряет смысл. При расхождении посмотрите не только на итоговое число, но и на промежуточные решения: какие элементы были приняты или отвергнуты. Отдельно проверьте начальное значение счётчика и границы повторения. Исправление должно объяснять найденное расхождение, а не просто менять ответ до совпадения с одним примером.
Проверьте перенос на новые данные
После исправления повторите разные случаи и добавьте новый небольшой промежуток. Убедитесь, что программа решает общее правило, а не подстроена под проверенные числа. Затем оцените, подходит ли способ к допустимому объёму входных данных. Простой полный перебор может быть удобен для проверки идеи, но не всегда подходит для больших ограничений. Актуальные требования экзамена и доступные средства нужно сверять с официальными материалами соответствующего года. Понимание алгоритма важнее запоминания внешне похожего готового решения.
Попробуйте на практике
Проверьте правило подсчёта чисел от одного до двадцати включительно, делящихся на три и не делящихся на пять.
- Выпишите числа, делящиеся на три, затем исключите те, которые одновременно делятся на пять. Получите ручной ожидаемый список.
- Объясните словами, какие проверки выполняются для каждого числа и когда увеличивается счётчик.
- Придумайте три маленьких дополнительных промежутка: с одним подходящим числом, без подходящих чисел и с подходящей границей.
- Опишите возможную ошибку границы или логического условия и укажите, какой из ваших примеров поможет её обнаружить.
Как проверить результат. Для исходного промежутка подходят три, шесть, девять, двенадцать и восемнадцать. Проверка объясняет исключение пятнадцати и отдельно рассматривает включение границ.
Частые вопросы
Отсутствие ошибки выполнения подтверждает правильность?
Нет. Программа может корректно выполнять неверно сформулированный алгоритм. Нужна проверка соответствия условию и ожидаемым результатам.
Нужно ли всегда писать сложные тесты?
Для начала полезнее несколько маленьких примеров с понятной целью. Они помогают локализовать ошибку и объяснить, почему исправление работает.
Самостоятельный разбор темы. Содержание конкретной обучающей программы здесь не представлено.