Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

Поиск по сайту

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

Отладка алгоритма и виды ошибок

💻 Информатика · 7 класс

Какие бывают ошибки в алгоритмах и как их находить и исправлять.

Программный код на экране
Программный код на экранеMartin Vorel · Wikimedia Commons · CC BY-SA 4.0

Отладка алгоритма

Редко удаётся составить алгоритм без ошибок с первого раза — это нормально даже для опытных программистов. Отладка — это процесс поиска и исправления ошибок в алгоритме или программе. Чтобы отладка шла быстро, важно понимать, какие вообще бывают ошибки, как они проявляются и как их искать.

Виды ошибок

Ошибки в алгоритмах делят на несколько групп в зависимости от того, на каком этапе и как они обнаруживаются. Знание вида ошибки сразу подсказывает, где её искать.

Вид ошибкиВ чём проявляетсяПример
Синтаксическаянарушены правила записипропущена скобка или знак
Ошибка выполненияпрограмма аварийно останавливаетсяделение на ноль
Логическаярезультат получается невернымперепутаны знаки действий

Синтаксические ошибки самые заметные: их обычно находит сама программа-исполнитель и отказывается запускать алгоритм, указывая на место ошибки. Ошибки выполнения возникают уже во время работы и прерывают её. А вот логические ошибки самые коварные: алгоритм спокойно выполняется до конца, но выдаёт неправильный ответ, и понять это можно только проверкой.

Как искать ошибки

Главный приём отладки — трассировка: пошаговое выполнение алгоритма с записью значений всех величин на каждом шаге. Сравнивая ожидаемый и полученный результат шаг за шагом, находят то самое место, где значение стало неверным, — там и кроется ошибка.

Шаг 1: a = 5 Шаг 2: b = 3 Шаг 3: s = a - b ← ожидали сумму, а здесь вычитание! Найдена логическая ошибка: знак «минус» вместо «плюс»

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

Отдельно стоит проверять алгоритм на особых случаях: нулевых значениях, очень больших числах, пустых данных. Именно на таких «крайних» примерах часто и прячутся ошибки, которые не видны на обычных числах. Хорошая привычка — придумывать несколько разных проверок, прежде чем считать алгоритм готовым.

Правило. Если программа запустилась без сообщений, но дала неверный ответ — это логическая ошибка. Её нельзя найти автоматически, потому что для исполнителя всё «правильно». Поэтому нужна трассировка и проверка алгоритма на примерах с заранее известным результатом.

Кратко о главном

  • Отладка — поиск и исправление ошибок в алгоритме.
  • Ошибки бывают синтаксические, выполнения и логические.
  • Синтаксические находит сама программа до запуска.
  • Ошибки выполнения прерывают работу алгоритма.
  • Логические опаснее: алгоритм работает, но ответ неверный.
  • Главный приём отладки — пошаговая трассировка и проверка на примерах.