Загрузка...

Искать ошибку

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

Свободные места, вычитание наоборот

python
total = 12
taken = 9
free = taken - total
print(free)

На первом экране появляется -3. Это целое число: знак минус и никакой десятичной точки. print его выводит, и программа заканчивается; None не печатается. Но свободных мест не может быть -3: это девять минус двенадцать. Имя free обещает пустые места, а арифметика отбирает места у тех, кто уже сидит. Ошибка видна прямо в этой строке, второй инструмент не нужен.

Свободные места, порядок исправлен

python
total = 12
taken = 9
free = total - taken
print(free)

Второй пример — отдельная программа. Числа те же, поменялся только порядок, и на экране 3. Двенадцать минус девять — остаётся три места. print выводит 3, целое число без десятичной точки. Первую программу вторая не меняет: запустите первую снова, и на экране по-прежнему -3. Исправление лежит в порядке внутри free, а не в новом пакете или новой папке.

В первой программе вычитание идёт задом наперёд. print лишь выводит результат: пакет он не ставит, папку не создаёт. Программа не прерывается на TypeError, следующей строкой не печатает None, и ни blue, ни 9, ни 12 на экране нет. Ошибка — это то самое число, которое вы увидели.

Число на экране выдаёт ошибку

По -3 вы поняли, что порядок вычитания перевёрнут, а по 3 — что теперь он рабочий. На следующей странице нужно будет описать функцию. Эта страница показывает только неверное число, а потом те же числа в нужном порядке.

🧠 Проверьте Свои Знания

Готов к Началу

Проверьте Свои Знания

Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему

❓
5
Вопросы
🎯
70%
Для Прохождения
♾️
∞
Время
🔄
∞
Попытки

📝 Инструкции

  • Внимательно прочитайте каждый вопрос
  • Выберите лучший ответ на каждый вопрос
  • Вы можете пересдавать тест столько раз, сколько захотите
  • Ваш прогресс будет показан вверху