В экзаменационных задачах и заданиях проверка правильности составленных программ проводится на ЭВМ путем их испытания на специально подбираемых тестах. Эта работа проводится преподавателями или экзаменаторами по завершении отладки программ на ЭВМ.
Напомним два основных определения, на которых базируется оценка правильности программ по результатам их тестирования:
1) программа объявляется содержащей ошибки,
если можно указать тесты, при которых выполнение программы на ЭВМ приводит к отказу, сбою или получению неправильных результатов;
2) программа является правильной,
если при любых допустимых исходных данных она дает правильные результаты.
Напомним два дополнительных, но весьма существенных определения допустимости исходных данных:
1) исходные данные считаются допустимыми,
если для этих данных существует решение поставленных задач;
2) исходные данные недопустимы, если для этих данных поставленная задача не имеет решений.
Наконец правильность результатов решения регламентируется следующими двумя определениями:
1) результаты решения правильные,
если они соответствуют требованиям поставленной задачи;
2) результаты решения неправильные,
если они противоречат требованиям поставленной задачи.
Подбор тестов для проверки программ опирается на некоторые общие принципы, среди которых можно выделить следующие:
1) проверка частных случаев задачи;
2) проверка основных случаев задачи;
3) проверка граничных случаев.
Частные случаи - те, которые допускают простейшие способы решения и проверки правильности результатов. Граничными случаями объявляются данные, которые лежат на границе между допустимыми и недопустимыми данными.
Разбор этих понятий проведем на примере типичной экзаменационной задачи по информатике.
Задача. «Средняя зарплата».
Среди N сотрудников отдела выделить тех, кто получает зарплату выше средней по данным из следующей таблицы:
Иванов |
начальник |
2500 |
Петров |
сотрудник |
1800 |
Сидоров |
секретарь |
900 |