Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмические языки: Лабораторная работа №4 -...doc
Скачиваний:
23
Добавлен:
10.11.2019
Размер:
105.98 Кб
Скачать

5. Оформление отчета

В отчет включить:

  • Тему и цель работы;

  • Задание на выполнение (конкретный вариант индивидуального задания);

  • Алгоритм программы в виде псевдокода. Части алгоритма, выполняющие законченные этапы общего алгоритма, целесообразно оформить в виде подалгоритмов;

  • Текст программы с комментариями;

  • Результаты выполнения программы (для нескольких размеров исходной матрицы и для различных ситуаций наличия или отсутствия решения в зависимости от исходных данных):

6. Требования к работе

  1. Приведенное выше содержание отчета достаточно для выполнения задания всех уровней сложности. Алгоритм программы, реализующий индивидуальное задание, необходимо разработать самостоятельно по образцу и на основе алгоритмов, приведенных в теоретической части. Для максимальных уровней сложности задания (9 и 10) описание подобных алгоритмов в теоретической части не приводится, его необходимо найти и реализовать самостоятельно.

  2. Требования по каждому критерию оценки:

    1. Точное выполнение полученного варианта задания. Обратить внимание на возможность ввода исходных данных, для которых выполнение поставленной задачи невозможно по той или иной причине. Обеспечить вывод на консоль сообщения о причине (или причинах, если их несколько) невыполнения задания.

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

    3. Обратить внимание на аккуратность оформления псевдокода. Следите за уровнями вложенности алгоритмических конструкций и отображайте их соответствующими отступами. Разбиение псевдокода на части (выделение подалгоритмов для отдельных этапов решения задачи) часто позволяет уменьшить вложенность и избежать лишних ошибок.

    4. Качество алгоритма, время выполнения которого сильно зависит от размера исходных данных, зависит от наличия (или, наоборот, отсутствия) лишних операций, замедляющих его работу. Не помещайте действий, которые можно выполнить однократно, внутри циклов. Если в алгоритме существует возможность не выполнять цикл обработки до конца, используйте выход из цикла. Следите за местом инициализации переменных при использовании вложенных циклов.

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

    1. Исходный текст программы должен точно соответствовать разработанному алгоритму. Если в алгоритме выделены подалгоритмы для выполнения отдельных этапов решения задачи, то они могут быть реализованы в виде отдельных функций программы, что не является обязательным, но повышает ценность работы.

    2. Если при выполнении программы при каких-либо исходных данных могут возникнуть ситуации, приводящие к ошибке времени выполнения (например, к выходу индекса за пределы массива), необходимо это отслеживать. Отсутствие соответствующего контроля снижает надежность программы. Можно также добавить контроль корректного ввода размера матрицы. Для случая квадратной матрицы достаточно ввода только одного размера.

    3. Основными конструкциями, используемыми в данной программе, являются циклы for. Использование других видов циклов (while и do-while) не исключается, но должно иметь четкое обоснование. Принципиально важным в большинстве вариантов задания является порядок записи в программе и правильная вложенность циклов. При необходимости использования операторов управления циклами break и continue делайте это корректно.

18