
- •Часть 1
- •Содержание
- •Среда программирования Turbo Pascal
- •Лабораторная работа №1 Программирование вычислительного процесса с алгоритмом линейной структуры
- •5. Протокол работы программы
- •6. Содержание отчета
- •Лабораторная работа №2 Программирование разветвляющегося вычислительного процесса
- •Примеры программирования разветвляющихся вычислительных процессов
- •1. Использование условного оператора
- •4. Программа. Программа составляется по блок-схеме с учетом таблицы распределения идентификаторов.
- •4. Программа. Программа составляется по блок-схеме с учетом таблицы распределения идентификаторов.
- •Лабораторная работа №3 Программирование циклических вычислительных процессов
- •Примеры программирования циклических вычислительных процессов с заданным числом повторений
- •2. Таблица распределения идентификаторов
- •2. Таблица распределения идентификаторов
- •Примеры программирования циклических вычислительных процессов с заданным диапазоном изменения переменной
- •3. Блок-схема программы
- •Примеры программирования вычислительных процессов, выполняемых до достижения заданной точности
- •Лабораторная работа №4 Программирование комбинированных вычислительных процессов.
- •Примеры программирования комбинированных вычислительных процессов
- •2. Таблица распределения идентификаторов
- •2. Блок-схема программы
- •3. Таблица распределения идентификаторов
- •2. Таблица распределения идентификаторов
- •Приложение 1 Структура программы
- •Приложение 2 Основные функции
- •Приложение 3 Основные элементы блок-схемы
- •Приложение 4
6. Содержание отчета
- титульный лист (номер лабораторной работы и ее название);
- формулировка задачи;
- таблица распределения идентификаторов;
- блок-схема программы;
- распечатка программы и протокола ее работы.
Пример оформления отчета представлен в приложении 4.
Лабораторная работа №2 Программирование разветвляющегося вычислительного процесса
Цель работы: изучение особенностей алгоритмизации и программирования разветвляющихся вычислительных процессов.
Общие положения
Разветвляющимся называется такой алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса. Каждый подобный путь называется ветвью алгоритма.
Признаком разветвляющегося алгоритма является наличие операций проверки условия. Различают два вида условий – простые и составные.
Простым условием (отношением) называется выражение, составленное из двух арифметических выражений или двух текстовых величин (иначе их еще называют операндами), связанных одним из знаков:
< - меньше
> - больше
<= - меньше или равно
>= - больше или равно
<> - не равно
= - равно
Составным условием называется выражение, составленное из двух или более простых условий, связанных операцией: or (логическое «или»), and (логическое «и»).
Высказывания, при подстановке в которые некоторых значений переменных, можно сказать истинно (верно) оно или ложно (неверно), называются булевыми (логическими) выражениями (название «булевые» произошло от имени математика Джорджа Буля, разработавшего в XIX веке алгебру логики).
Переменная, которая может принимать одно из двух значений: True (истина) или False (ложь), называется булевой (логической) переменной.
В языке программирования Pascal имеются два условных оператора: if-then-else и case-of.
Условный оператор if-then-else
Полная форма конструкции условного оператора имеет вид:
if <условие> then <оператор 1> else <оператор 2>;
Сокращенная форма условного оператора имеет вид:
if <условие> then <оператор 1>,
где <условие> – логическое выражение;
<оператор 1>, <оператор 2> – любой оператор языка Turbo Pascal.
Условный оператор реализует разветвляющуюся алгоритмическую структуру (рис. 4).
а) |
б)
|
Рис. 4. Алгоритмические конструкции условного оператора в полной (а) и сокращенной (б) форме |
Условный оператор работает по следующему алгоритму: сначала проверяется значение логического выражения, расположенного за служебным словом IF. Если его результат истина, то выполняется <оператор1>, расположенный после слова THEN, а действия после ELSE пропускаются; если результат ложь, то, наоборот, действия после слова THEN пропускаются, а после ELSE выполняется <оператор 2>.
Если в качестве оператора должна выполниться серия операторов, то они заключаются в операторные скобки begin-end.
Например:
а) if <лог. выраж.> then begin оператор; ... end else begin оператор; ... end; |
б) if <лог. выраж.> then begin оператор; ... end else оператор;
|
в) if <лог. выраж.> then оператор else begin оператор; ... end;
|
Оператор выбора сase-of
Если условный оператор if может обеспечить выбор из двух альтернатив, то оператор выбора сase позволяет сделать выбор из произвольного числа имеющихся вариантов. Данный оператор состоит из выражения-селектора (selection – выбор альтернативы) и списка параметров, каждому из которых предшествует список констант выбора.
Полная форма конструкции оператора выбора имеет вид:
case <выражение-селектор> of
<список1>: <оператор1>;
…
<списокN>: <операторN>
else < оператор>
end;
Значения <список1>, <список2> и т.д. могут быть заданы четырьмя способами: один элемент (2), перечисление (1, 5, 7, 9), диапазон (0..6), смешанный (22, 23, 24, 0..6).
Оператор выбора работает следующим образом: сначала вычисляется значение выражения-селектора, затем обеспечивается реализация того оператора, константа выбора которого равна текущему значению селектора. Если ни одна из констант не равна текущему значению селектора, выполняется оператор, стоящий за словом else. Если слово else отсутствует, активизируется оператор, находящийся за словом end, т.е. оператор, следующий за case.