Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания к расчетно-графической работе.doc
Скачиваний:
23
Добавлен:
02.05.2014
Размер:
294.91 Кб
Скачать

Методические указания к расчетно-графической работе по дисциплине

ЭВМ и вычислительные системы”

  1. Цель работы и расчетные затраты времени

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

  1. применить приобретенные в предыдущих дисциплинах знания и умения для формализованного описания задачи обработки данных;

  2. научиться разрабатывать внешние спецификации проектируемой программы в виде схемы программы;

  3. научиться проектировать тесты, позволяющие установить соответствие разработанного программного обеспечения его внешним спецификациям.

Таблица 1

Содержание и форма представления ргр

Задачи расчетно-графической работы

Форма представления результатов

Затраты времени (час)

1

Математическое описание задачи обработки данных

Математические соотношения и пояснительный текст

2

2

Разработка схемы программы

Схема схемы программы, выполненная согласно ГОСТ 19.701-90

3

3

Разработка программы преобразования данных (реализация функций программы)

Программа на языке ассемблера

6

4

Разработка тестов для верификации функций программы. Тестирование и отладка

Описание цели каждого теста, входных данных для теста, ожидаемых и фактических результатов тестирования

3

5

Оформления отчета по курсовой работе

Отчет по курсовой работе

3

ВСЕГО

16

  1. Математическое описание задачи обработки

Задания на РГР в большинстве касаются обработки векторов (одномерных массивов) и матриц (двухмерных массивов). Преобразования, предлагаемые заданиями, являются частью более сложных задач анализа и оптимизации проектных решений, например, поиск максимального и минимального значений в векторе может быть частью решения систем уравнений и использоваться для определения обусловленности системы уравнений (в этом случае элементы вектора – собственные значения матрицы Якоби анализируемой системы). Рассмотрим математическое описание на примере этого задания.

Прежде всего, описываются исходные данные: дана последовательность элементов ,.

Далее записываются результаты решения: найти , такой, что

и найти , такой, что.

  1. Правила выполнения схемы программы

Схема программы разрабатывается согласно ГОСТ 19.701-90.

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

При документировании проекта разработки программного обеспечения применяют схемы:

  • работы системы, в которой формализуется процесс выполнения программы, взаимодействие с пользователем и данными;

  • программ (или иначе блок-схем), в которых формализуется алгоритм обработки данных;

  • данных, в которых уточняются потоки данных между процессами и (или) носителями данных;

  • взаимодействия программ, отображающих путь активации программ и взаимодействий с данными;

  • ресурсов системы, отображающих конфигурацию блоков данных и обрабатывающих блоков, требуемую для решения задачи или набора задач.

Правила оформления схем описаны в ГОСТ 19.701-90 / 6 / и / 7 /.

Общие рекомендации к выполнению схем следующие:

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

  • в схемах применяют условные графические обозначения: чаще всего прямоугольники или другие простые фигуры. Размеры условных графических обозначений и толщина составляющих их линий должны быть одинаковыми на всех схемах проекта;

  • допускается пропорциональное изменение условных графических обозначений;

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

  • линии связи и линии графических обозначений должны быть одной толщины. Рекомендуемая толщина линий – 0.3- 0.4 мм ( пределы изменения толщины – от 0.2 мм до 1.0 мм);

  • линии связи должны состоять из вертикальных и горизонтальных отрезков и иметь наименьшее число возможных изломов и точек пересечения.

В определении схем утверждается, что схемы составляются из символов. В таблице 2 приведены символы, которые наиболее часто применяются в схемах программ и контексты их применения (в каком смысле эти символы применяют).

Т а б л и ц а 2

Символы процесса и контекст их применения

Название блока

Обозначение

Назначение блока

Терминатор

Начало, завершение программы или подпрограммы

Процесс

Действие

Обработка данных (вычисления, пересылка, модификация и т.п.)

Данные

Операции ввода-вывода информации

Решение

Ветвление, выбор, итерационные и поисковые циклы

Подготовка

Счетные циклы (выполняемые заданное количество раз)

Границы цикла

Начало

Конец

Любые цикла (надписи символов поясняют условия инициализации цикла и условия окончания цикла)

Предопределенный процесс

Вызов процедуры, функции, подпрограммы

Продолжение таблицы 2

Соединитель

Маркировка разрывов линий

Комментарий

----- Текст пояснения

Пояснения к символам или операциям

Применение символа “предопределенный процесс” в схемах программ предполагает, что детальная спецификация вызываемой подпрограммы или модуля будет приведена в документе далее по тексту.

Использование символа граница цикла в схемах программ может быть проиллюстрировано рисунком 1.

а) б) в)

а – парное использование символов границы цикла

б- правило использование текста для циклов с предусловием;

в - правило использование текста для циклов с постусловием.

Рис. 1. Оформление циклов в схемах программ с применением символов “граница цикла”

Несколько выходов из символа следует изображать:

  • несколькими линиями от данного символа к другим символам;

  • одной линией от данного символа, которая затем разветвляется в соответствующее число линий (только для символа “решение”).

Каждый выход из символа “решение” должен сопровождаться соответствующими значениями условий, чтобы показать логический путь, который он представляет, с тем, чтобы эти условия и пути выполнения алгоритма задачи были идентифицированы (см. рис. 2).

а) б)

а- несколько линий от символа “решение”;

б- одна разветвляющаяся линия от символа “решение”).

Рис. 2. Оформление ветвлений в схемах программ

Две или более входящие линии могут объединяться в одну исходящую линию, место объединения должно быть смещено как показано на рисунке 3.

Рис. 3. Объединение линий управления в схемах программ

При использовании символов в схемах руководствуются следующими правилами:

1) символы в схеме должны быть расположены равномерно. Следует придерживаться разумной длины соединений и минимального числа длинных линий;

2) символы должны быть, по возможности, одного размера;

3) символы могут быть вычерчены в любой ориентации, но предпочтительной является горизонтальная ориентация. Зеркальное изображение формы символа означает одну и ту же функцию;

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

Рис. 4. Применение комментариев в схемах программ

В качестве примера приведу фрагмент схемы программы с циклом с заданным числом повторений (в большинстве языков программирования эта конструкция начинается зарезервированным словом for) (см. рис. 5,6).

I, I=N1, I+1, I>N2

Тело цикла

Действия после цикла

I

а) б)

а - конструкция “счетный цикл”

б – конструкция “цикл общего вида”

Рис. 5. Применение символов процесса для отображения цикла с заданным числом повторений

нет

да

Рис. 6. Детальное представление цикла с заданным числом повторений

  1. Разработка алгоритма преобразования

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

Алгоритмический процесс — процесс последовательного преобразования конструктивных объектов (слов, чисел, пар слов, пар чисел, предложений и т.п.), происходящий дискретными «шагами». Каждый шаг состоит в смене одного конструктивного объекта другим.

Поскольку алгоритмы могут применяться к весьма произвольным объектам (числам, буквам, словам, графам, логическим выражениям и т.д.), в определении алгоритма используется специальный термин — «конструктивный объект», объединяющий в себе все эти возможные случаи.

На практике в программировании используется задание алгоритмов в виде схем программ (см. предыдущий параграф).

Схемы программ разрабатываются с использованием принципов структурного программирования:

- во-первых, каждый программный модуль (блок, функция, процедура) должен иметь только один вход и один выход. Это позволяет максимально упростить стыковку модулей в программе;

- во-вторых, в программах рекомендуется применять 4 типа конструкций:

а) последовательность (модулей, операторов), отраженную на рис. 7;

Рис. 7. Программная конструкция “последовательность”

б) разветвление (условный оператор), демонстрируемое рисунком 8 (перечеркивание оператора означает, что Q может отсутствовать.

Рис. 8. Программная конструкция “ветвление”

в) цикл

  1. с предусловием (см. рис. 9);

Рис. 9. Программная конструкция “цикл с предусловием”

  1. с постусловием (см. рис. 10);

Рис. 10. Программная конструкция “цикл с постусловием”

г) выбор из нескольких альтернатив (или переключатель), изображенный на рис. 11;

Рис. 11. Программная конструкция “переключатель”

- в-третьих, разработку программ рекомендуется вести сверху – вниз или по нисходящей стратегии.

Схемы программ для конкретных задач, как правило, содержат более сложные программные конструкции, которые включают перечисленные выше, например цикл в цикле, условие в цикле, цикл в условии и т.п.

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

Соседние файлы в предмете Архитектура вычислительных систем