0 голосов
спросил от в категории Python
Компиляция не означает, что ваш код прав!:laugh:
Подумайте о процессе разработки как написании электронного письма: компиляция успешно означает, что вы написали электронное письмо на правильном языке - например, на английском, а не на немецком, - не то, что письмо содержало нужное вам сообщение для отправки.

Итак, теперь вы входите во второй этап разработки (на самом деле это четвертый или пятый, но вы придете на более ранние этапы позже): Тестирование и отладка.
Начните с рассмотрения того, что он делает, и как это отличается от того, что вы хотели. Это важно, потому что он дает вам информацию о том, почему он это делает. Например, если программа предназначена для того, чтобы пользователь вводил число, и он удваивает его и печатает ответ, то если вход/выход был таким:
Input   Expected output    Actual output   1            2                 1   2            4                 4   3            6                 9   4            8                16
Тогда довольно очевидно, что проблема заключается в том, что бит удваивает его - он не добавляет себя к себе или не умножает его на 2, он умножает его сам по себе и возвращает квадрат входа. Таким образом, вы можете посмотреть в коде, и очевидно, что он где-то здесь:
private int Double(int value)    {    return value * value;    }

Как только у вас появится представление, что может быть не так, начните использовать отладчик, чтобы узнать, почему. Поместите контрольную точку на первую строку и запустите приложение. Подумайте о том, что должна делать каждая строка в коде, прежде чем выполнять ее, и сравните ее с тем, что она на самом деле сделала, когда вы используете кнопку «Step Over» для выполнения каждой строки по очереди. Он сделал то, что вы ожидаете? Если это так, переходите к следующей строке.
Если нет, почему бы и нет? Как это отличается?

Это умение, и это тот, который стоит развивать, так как он помогает вам в реальном мире, а также в развитии. И, как и все навыки, он улучшается только с помощью!

Если вы не знакомы с отладчиком, см. Здесь:
Input   Expected output    Actual output   1            2                 1   2            4                 4   3            6                 9   4            8                16
# [
private int Double(int value)    {    return value * value;    }
# ]

Пожалуйста, войдите или зарегистрируйтесь чтобы ответить на этот вопрос.

Категории

Добро пожаловать на сайт DraftingCode Q&A, где вы можете задавать вопросы и получать ответы от других членов сообщества.

Связанных вопросов не найдено

...