Лабораторная работа №3
РАЗРАБОТКА
БЛОК-СХЕМ АЛГОРИТМОВ.
ОЗНАКОМЛЕНИЕ
С MICROSOFT VISIO
Цель работы: изучить принципы построения блок-схем для различных
типов алгоритмов.
Программа работы:
Изучить
и закрепить основы разработки блок-схем.
Освоить
векторный редактор Visio в части разработки блок-схем.
Провести
анализ примера и определить тип алгоритма.
Разработать
блок-схему рассмотренного примера.
Ход
работы:
Дана функция 𝑦=𝑎∙𝑥2+𝑏∙𝑥+𝑐. Коэффициенты 𝑎,𝑏,𝑐
являются константами, а 𝑥 находится в
интервале [–10,18] и изменяется с шагом ℎ, значение которого вводится с клавиатуры. Найти все
значения функции для заданных 𝑥.
Контрольные вопросы:
1.
Что такое алгоритм и блок-схема
алгоритма (БСА) программы? Для чего вычерчивается БСА? Какие нормативные
документы определяют её оформление?
2.
Отличительные особенности алгоритмов
с предусловием и постусловием.
3.
Какие условные обозначения блоков
схем алгоритмов существуют?
4.
Какие элементарные алгоритмические
структуры существуют?
Ответы:
1.
На
языке схем алгоритмов разработчик описывает метод, выбранный для решения
поставленной задачи. Довольно часто бывает, что одна и та же задача может быть
решена различными методами. Способ решения задачи, выбранный на этапе ее инженерной
интерпретации, на основе которого формируется БСА, определяет не только
качество разрабатываемой прикладной программы, но и качественные показатели
конечного изделия.
Разработка
БСА очень похожа на разработку аппаратурных средств . систем автоматики и
обработки данных. В основу разработки БСА положена та же самая процедура
модульного проектирования, которая традиционно используется разработчиками
аппаратурных средств. Отличие состоит в том, что при разработке аппаратурных
средств в качестве ’’строительного” материала используются логические схемы,
триггеры, регистры и другие интегральные элементы, а при создании программного
обеспечения разработчик оперирует командами, подпрограммами, таблицами и
другими программными объектами из арсенала средств обработки данных.
Так
как алгоритм есть точно определенная процедура, предписывающая контроллеру
однозначно определенные действия по преобразованию ’’сырых” исходных данных в
обработанные выходные данные, то разработка БСА требует предельной точности и
однозначности используемой атрибутики: символических имен переменных, констант
(уставок), подпрограмм (модулей), символических адресов таблиц, портов ввода/
вывода и т.п. Основное внимание при разработке БСА следует уделить тому разделу
функциональной спецификации прикладной программы, в котором приводится описание
аппаратуры сопряжения МК с объектом управления. (Это описание для успешной
разработки программного обеспечения должно быть детализировано вплоть до
электрических и временных характеристик каждого входного и выходного сигнала
или устройства.)и выводами;
2. Цикл с предусловием - это когда
сначала проверяешь, выполняется ли это самое условие, а потом, в зависимости от
результата проверки, выполняешь или не выполняешь действие еще раз.
Цикл
с постусловием - сначала выполняешь действие (ну, например, делаешь глоток воды
из стакана) , потом проверяешь выполнение условия (утолил ли жажду) , и в
зависимости от выполнения условия повторяешь или не повторяешь действие.
3.
|
|
Блок
начала алгоритма
|
|
|
Блок завершения
алгоритма
|
|
|
Блок ввода
данных с клавиатуры. Внутри блока указано, в качестве примера, имя вводимой
переменной,
|
|
|
Блок
вычислений. Внутри блока указано, в качестве примера, имя вычисляемой
переменной.
|
|
|
Блок
вывода данных на экран монитора. Внутри блока указано, в качестве примера,
имя выводимой переменной.
|
|
|
Блок
условия (ветвления). Внутри блока указано, в качестве примера, проверяемое
условие.
|
|
|
Блок
цикла. Внутри блока указывается количество повторений тела цикла с
помощью счётчика циклов. В качестве примера счётчика циклов
использована переменная i , которая изменяется от 1 до 10 с
шагом 1 (по умолчанию). Таким образом, для данного примера тело цикла
повторится 10 раз. (Тело цикла может содержать любые блоки; на рисунке оно не
изображено, а обозначено многоточием).
|
|
|
Обозначения
разрыва ветвей для переноса на другой лист. В кружке указывается номер ветви.
( В качестве примера указан номер 1).
|
|
|
Обозначение
объединения ветвей
|
4.
|
1.
Линейный. Все
команды алгоритма выполняются последовательно одна за другой.
|
Пример блок-схемы линейного алгоритма:
|
|
2.
Разветвлённый. Содержит
блок условия (ветвления) и имеет две или более ветвей. В зависимости от
истинности условия выполняется одна из ветвей.
|
Пример блок-схемы разветвлённого алгоритма:
|
|
3.
Циклический. Содержит
многократно повторяющийся фрагмент - тело цикла и обеспечивает необходимое
число повторений этого фрагмента. Количество повторений тела цикла не должно
быть бесконечным.
|
Пример блок-схемы циклического алгоритма:
|
Комментариев нет:
Отправить комментарий