Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

lab_1

.pdf
Скачиваний:
23
Добавлен:
29.02.2016
Размер:
599.34 Кб
Скачать

Министерство образования Республики Беларусь Министерство образования и науки Российской Федерации БЕЛОРУССКО-РОССИЙСКИЙ УНИВЕРСИТЕТ

Кафедра "Программное обеспечение информационных систем"

Курс

"Основы алгоритмизации и программирования"

Методические указания

по лабораторной работе N1

Алгоритмы

г. Могилев 2013

2

Программирование базовых конструкций алгоритмов. Методические указания по лабораторной работе №1 по дисциплине «Основы программирования». Для студентов очной формы обучения направления подготовки 231000 «Программная инженерия» и дневной формы обучения специальности 1-53 01 02 «Автоматизированные системы обработки информации».

Лабораторная работа разработана заведующим кафедрой «Программное обеспечение информационных систем» доцентом К.В. Овсянниковым, старшим преподавателем кафедры «Программ-

ное обеспечение информационных систем» А.И. Кашпаром

БЕЛОРУССКО-РОССИЙСКИЙ УНИВЕРСИТЕТ

 

 

 

3

Содержание

 

1

Цель работы ............................................................................................................................................

4

2

Ход работы..............................................................................................................................................

5

 

2.1

Получение индивидуального задания .........................................................................................

5

 

2.2

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

5

3

Содержание отчета ................................................................................................................................

6

4

Краткие теоретические сведения ........................................................................................................

7

 

4.1

Алгоритмизация..............................................................................................................................

7

 

4.2

Пример алгоритма ........................................................................................................................

13

5. Задания .................................................................................................................................................

15

6

Контрольные вопросы ........................................................................................................................

21

Литература ...............................................................................................................................................

22

4

1 Цель работы

Целью лабораторной работы является:

1)программирование базовых конструкций алгоритмов;

2)получение практических навыков по работе с алгоритмами.

5

2 Ход работы

2.1 Получение индивидуального задания

Вначале следует получить индивидуальное задание у преподавателя, проводящего лабора-

торную работу. Варианты заданий приводятся в разделе 5.

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

Отчет оформляется индивидуально каждым студентом.

6

3 Содержание отчета

Отчет по лабораторной работе выполняется на листах формата А4. В состав отчета входят:

1)титульный лист;

2)цель работы;

3)текст индивидуального задания;

4)выполнение индивидуального задания.

7

4 Краткие теоретические сведения

4.1 Алгоритмизация

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

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

Цель исполнения алгоритма – получение определенного результата, если в результате испол-

нения алгоритма не достигнута определенная цель, значит алгоритм либо неверен, либо не завершен.

Алгоритм – это метод (способ) решения задачи, записанный по определенным правилам,

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

Или более коротко: алгоритм – это строго определенная последовательность действий, необ-

ходимых для решения данной задачи.

Примером алгоритма может служить кулинарный рецепт приготовления блюда. Рассмотрим простейший алгоритм – алгоритм заварки чая:

1)Подготовить исходные величины – чай, воду, чайник, стакан, ложку.

2)Налить в чайник воду.

3)Довести воду до кипения и снять с огня.

4)Всыпать в чайник чай.

5)Довести воду до кипения (но не кипятить), снять с огня.

6)Чай готов. Процесс прекратить.

Основными свойствами алгоритмов являются:

1Универсальность (массовость) – применимость алгоритма к различным наборам исход-

ных данных.

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

3Однозначность – правила и порядок выполнения действий алгоритма имеют единствен-

ное толкование.

4Конечность – каждое из действий и весь алгоритм в целом обязательно завершаются.

8

5Результативность – по завершении выполнения алгоритма обязательно получается ко-

нечный результат.

6Выполнимость – результата алгоритма достигается за конечное число шагов.

Алгоритм считается правильным, если его выполнение дает правильный результат.

Выделяют три крупных класса алгоритмов:

вычислительные алгоритмы – работающие с числами и матрицами, хотя сам процесс вычисления может быть долгим и сложным;

информационные алгоритмы – работающих с большими объемами информации (алго-

ритмы баз данных);

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

Способы записи алгоритмов

Для записи алгоритмов используют самые разнообразные средства. Выбор средства опреде-

ляется типом исполняемого алгоритма. Выделяют следующие основные способы записи алгоритмов:

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

символьный, когда алгоритм описывается с помощью набора символов;

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

Общепринятыми способами записи являются графическая запись с помощью блок -схем и символьная запись с помощью какого-либо алгоритмического языка.

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

ритма. Ниже приводятся изображения символов схемы программы по ГОСТ 19.701-90. Внешний вид основных блоков, применяемых при написании блок схем, приведен в таблице 4.1.

9

Таблица 4.1 – Графические изображения элементов схем алгоритмов

Символ

Значение

Применение

Начало, конец обра-

Завершение ботки данных или выполне-

ния программы

Обозначает ввод, вы-

Данные

вод данных

Обработка данных

любого вида (выполнение

Процесс

операции или группы опера-

ций)

Выбор направления

выполнения программы в

Решение

зависимости от некоторых переменных условий

Описывается подго-

товка данных для выполне-

Подготовка

ния повторяющихся дей-

ствий

Одна или несколько Типовой проопераций, которые опреде-

цесс лены в другой программе,

модуле

Используется при

Соединитель

разрыве линий схемы алго-

(узел)

ритма

Используется для по-

Комментарий

яснений

Основные алгоритмические конструкции

Линейный алгоритм.

10

Разветвляющийся алгоритм.

Циклический алгоритм.

Вспомогательный алгоритм.

Линейный алгоритм – алгоритм или фрагмент алгоритма, в котором порядок исполнения

инструкций соответствует порядку их записи.

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

дого блок-символа выходит не более одной линии потока информации. Обычно блок -схему разме-

щают таким образом, что блок-символы размещаются один под другим, и нет необходимости обо-

значать линии потока информации стрелками.

Допускается изображать линейный алгоритм горизонтально или в виде изгибающейся под прямыми углами цепочки блок – символов. В этом случае линии потока информации, идущие снизу

вверх и справа налево, следует изображать в виде стрелок.

Линейный фрагмент имеет любой алгоритм. В алгоритме «Кипячение воды» можно выделить

два линейных фрагмента.

Кипячение воды

Выключите газ

Зажгите спичку

Откройте газ

Поставьте чайник на плиту

Снимите чайник

Конец

Рисунок 4.1 – Линейные фрагменты алгоритма «Кипячение воды»

Разветвляющийся алгоритм – алгоритм или фрагмент алгоритма, в котором порядок испол-

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

Своим ветвлением разветвляющийся алгоритм обязан логическому условию, проверка кото-

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]