доказывает ли получение правдоподобного результата правильности программки
Подтверждает ли получение правдоподобного результата правильности программы
Задать свой вопрос1 ответ
Арсений
Абсолютно нет, рассмотрим такую вот программку:К образцу программа обязана определять, является ли число положительным, предположим что имеется такая функция:
boolian isNumberMoreThenZero(integer num) //функция булевая, т.е.
//возращает одно из значений - true/false, принемает на вход число
boolian result; //есть переменная хранящая результат,
//или ответ если пожелаете
result = false; //по умолчанию он равен false
if (num lt;= 0) //тут к образцу ОШИБКА,
//проверяем является ли число больше либо одинаково 0
//(мы допустили ошибку и указали меньше)
result = true; //если да, то число положительное и ответ true
return result; //вернуть значение
Если на входных данных будет 0 - он является положительным числом, программка выведет true - что является правильным ответом.Но если мы введем хоть какое отрицательное число, то ответ так же будет true - что является ошибкой.Подай на вход мы положительное число, то программа выведет false - и это ошибка.
Вывод таковой:Функция работает верно в часных случаях, к образцу как с 0, но в иных случаях она не способна вывести правельный ответ.Проще разговаривая, просто подтверждаем ответ на ваш вопрос - "НЕТ, программа не будет верно работать в целом, а только в приватных случаях".Производный вопрос - а как этого избежать? Ответ: покрыть код программки и все её логические блоки - тестами.
boolian isNumberMoreThenZero(integer num) //функция булевая, т.е.
//возращает одно из значений - true/false, принемает на вход число
boolian result; //есть переменная хранящая результат,
//или ответ если пожелаете
result = false; //по умолчанию он равен false
if (num lt;= 0) //тут к образцу ОШИБКА,
//проверяем является ли число больше либо одинаково 0
//(мы допустили ошибку и указали меньше)
result = true; //если да, то число положительное и ответ true
return result; //вернуть значение
Если на входных данных будет 0 - он является положительным числом, программка выведет true - что является правильным ответом.Но если мы введем хоть какое отрицательное число, то ответ так же будет true - что является ошибкой.Подай на вход мы положительное число, то программа выведет false - и это ошибка.
Вывод таковой:Функция работает верно в часных случаях, к образцу как с 0, но в иных случаях она не способна вывести правельный ответ.Проще разговаривая, просто подтверждаем ответ на ваш вопрос - "НЕТ, программа не будет верно работать в целом, а только в приватных случаях".Производный вопрос - а как этого избежать? Ответ: покрыть код программки и все её логические блоки - тестами.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов