- •Виды и значения алгоритмических блоков
- •Разновидности структур алгоритмов
- •Функция не определена
- •Варианты заданий Разработать алгоритм решения задачи линейной структуры.
- •Разработать алгоритм решения задачи разветвляющейся структуры.
- •Разработать алгоритм решения задачи циклической структуры.
- •Запись некоторых математических функций на языке Паскаль
- •Примеры записи математических выражений на языке программирования Паскаль
- •Варианты заданий
- •Функциональные клавиши
- •Текстовый редактор среды
- •Последовательность разработки программы в интегрированной среде Турбо Паскаль
- •Справочная система
- •Примеры программ, написанных на языке Паскаль.
- •Контрольные вопросы
- •Варианты заданий
- •Контрольные вопросы
- •Оператор if.
- •Варианты заданий
- •Контрольные вопросы
- •Варианты заданий
- •Варианты заданий
- •Контрольные вопросы
- •Варианты заданий
- •Контрольные вопросы
- •1 Оператор тела цикла;
- •Варианты заданий
- •Контрольные вопросы
- •Решение типового примера
- •Варианты заданий:
- •Дополнительные задания
- •Контрольные вопросы
- •В разделе type
- •Решение типовой задачи
- •Варианты заданий:
- •Дополнительные задания
- •Контрольные вопросы
- •Решение типовой задачи
- •Программа
- •Варианты заданий с подпрограммами - функциями:
- •Варианты заданий с подпрограммами – процедурами:
- •Контрольные вопросы
Лабораторная работа №1 6
Тема: Схемы алгоритмов различных вычислительных процессов 6
Цель: Научиться разрабатывать схемы вычислительных процессов 6
Виды и значения алгоритмических блоков 7
Разновидности структур алгоритмов 8
Варианты заданий 15
Контрольные вопросы 17
Лабораторная работа №2. 18
Тема: Запись выражений на языке Паскаль 18
Цель: Научиться записывать математические выражения на языке программирования Паскаль 18
Варианты заданий 19
Контрольные вопросы 20
Лабораторная работа №3. 21
Тема: Работа в среде Turbo Pascal 21
Цель: Изучить основные приемы работы в среде Turbo Pascal 21
Примеры программ, написанных на языке Паскаль. 24
Контрольные вопросы 25
Лабораторная работа №4 26
Тема: Линейное программирование 26
Цель: Разработать блок-схему, написать и отладить программу линейного алгоритма. 26
Варианты заданий 27
Контрольные вопросы 27
Лабораторная работа №5 29
Тема: Программирование разветвляющихся вычислительных процессов. Оператор IF 29
Цель: Разработать блок-схему, написать и отладить программу разветвляющегося алгоритма. 29
Варианты заданий 33
Контрольные вопросы 34
Лабораторная работа №6 35
Тема: Программирование разветвляющихся вычислительных процессов. Оператор CASE. 35
Цель: Разработать схему и написать программу с использованием оператора выбора CASE. 35
Варианты заданий 36
Контрольные вопросы 37
Лабораторная работа №7 38
Тема: Циклическое программирование. Оператор FOR 38
Цель: Разработать схему и программу с использованием оператора цикла FOR 38
Варианты заданий 42
Контрольные вопросы 43
Лабораторная работа №8 44
Тема: Циклическое программирование. Оператор While 44
Цель: Разработать схему и программу с использованием оператора цикла While 44
Варианты заданий 46
Контрольные вопросы 47
Лабораторная работа №9 48
Тема: Циклическое программирование. Оператор Repeat 48
Цель: Разработать схему и программу с использованием оператора цикла Repeat 48
Варианты заданий 50
Контрольные вопросы 51
Лабораторная работа № 10 52
Тема: Работа с одномерными массивами 52
Цель: Приобретение навыков работы с одномерными массивами. 52
Понятие массива 52
Варианты заданий: 54
Дополнительные задания 56
Контрольные вопросы 57
Лабораторная работа № 11 58
Тема: Работа с двумерными массивами 58
Цель: Приобретение навыков работы с двумерными массивами. 58
Варианты заданий: 60
Дополнительные задания 63
Контрольные вопросы 64
Лабораторная работа №12,13 65
Тема: Процедуры и функции в языке Pascal 65
Цель: Приобретение навыков написания подпрограмм пользователя 65
Программа 67
Варианты заданий с подпрограммами - функциями: 68
Варианты заданий с подпрограммами – процедурами: 70
Контрольные вопросы 72
Лабораторная работа №1
Тема: Схемы алгоритмов различных вычислительных процессов
Цель: Научиться разрабатывать схемы вычислительных процессов
Теоретическая часть.
Алгоритм - это точное предписание о порядке выполнения действий над исходными данными для получения требуемого результата.
Наиболее распространенным способом представления алгоритма является графический. В графическом представлении алгоритмы изображаются в виде блок-схемы, дополненной элементами словесной или математической записи.
Схема алгоритма включает геометрические фигуры (блочные символы), соединенные между собой стрелками (линиями), указывающими порядок выполнения операций.
Блочные символы стандартизированы и различаются по типу выполняемых действий (ГОСТ 19.002-80 и 19.003-80, международные стандарты ИСО 2636-73 или ИСО 1028-73).
Единственное ограничение накладывается на последовательность записей - они должны читаться слева направо и сверху вниз независимо от направления потоков информации.
Логика алгоритма должна опираться на минимальное число достаточно простых управляющих базовых структур. При разработке схем алгоритмов необходимо соблюдать некоторые требования:
В схеме алгоритма все линии от блока «начало» до блока «конец» не должны иметь разрывов, не помеченных соединителями. Все линии, указывающие последовательность выполнения действий, должны быть замкнутыми.
В схеме должны четко прослеживаться потоки информации. Блоки следует размещать таким образом, чтобы избегать пересечения линий. При передаче управления в схеме «снизу-вверх» или «справа—налево» линии обязательно помечают стрелками.
Блоки следует размещать таким образом, чтобы избегать пересечения линий. При передаче управления в схеме «снизу-вверх» или «справа-налево» линии обязательно помечают стрелками.
Не допускается передача управления в никуда. «Источник» передачи управления и «получатель» должны быть четко обозначены.
Виды и значения алгоритмических блоков
|
Изображение |
Значение |
|
|
|
Блоки начала и конца программы |
|
|
|
Блок ввода или вывода информации
|
|
|
|
Блок вычислений
|
|
|
Да
Нет |
Логический блок
|
|
|
|
Блок модификации (начало цикла) |
|
|
|
Блок подпрограммы |
|
|
|
Внутристраничные соединительные блоки |
|
|
|
Межстраничные соединительные блоки |
|
|
|
Блок комментариев |
Разновидности структур алгоритмов
По структуре алгоритмы разделяют на линейные, разветвляющиеся и циклические.
Линейными называют алгоритмы, в которых операции выполняются последовательно одна за другой, в естественном и единственном порядке следования. В таких алгоритмах все блоки имеют последовательное соединение логической связью передачи информационных потоков. В них могут использоваться все блоки, за исключением блоков проверки условия и модификации. Линейные алгоритмы, как правило, являются составной частью любого алгоритмического процесса.
П
1
1
.
Используя общепринятые символы блоков, изобразим схему разрабатываемого алгоритма (рис. 1.).
При составлении схем алгоритмов часто возникает необходимость проведения анализа исходных данных или промежуточных результатов вычислений и определения дальнейшего порядка выполнения вычислительного процесса в зависимости от результатов этого анализа. Алгоритмы, в которых в зависимости от выполнения некоторого логического условия происходит разветвление вычислений по одному из нескольких возможных направлений, называют разветвляющимися. Подобные алгоритмы предусматривают выбор одного из альтернативных путей продолжения вычислений. Каждое возможное направление вычислений называется ветвью. Логическое условие называют простым, если разветвляющийся процесс имеет две ветви, и сложным, если процесс разветвляется на три и более ветви.
Рассмотрим пример разветвляющегося алгоритма с простым логическим условием.
Пример 1.2. Рассчитать значение функции У(х)
Очевидно, что для определения ветви, по которой необходимо производить процесс вычисления значения x, достаточно проверить выполнение одного условия. Если условие x>3 не выполняется, то очевидно и без дополнительной проверки, что будет выполнено условие 3<=x. Следовательно, вариант схемы алгоритма будет выглядеть следующим образом (рис.2).
Рассмотрим примеры алгоритмов разветвляющейся структуры в случаях необходимости анализа более сложных логических условий.
Пример 1.3. Рассчитать значение функции У(х).
X
x<1
Да
Начало
2
3
7
Y=exp(1)/(sin(2+x)/cos(2+x))
4
(2<=x)
and (x<=4)
Да
8
Y=ln(sqr(x+2)-sqrt(x))
Да
5
x>5
9
Y=sqr(sin(2-6))
6
