- предназначен для ветвления программы на два направления.
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.
Рассмотрим четыре варианта записи оператора IF:
где <условие>,<условие1>, <условие2> - переменные логического типа. Р1, Р2 - простые или составные операторы.
Таблица
Таблица истинности сложных условий: И - истинно, Л - ложно
(<условие1>) |
И |
И |
Л |
Л |
(<условие2>) |
И |
Л |
И |
Л |
(<условие1>) or (<условие2>) |
И |
И |
И |
Л |
(<условие1>) and (<условие2>) |
И |
Л |
Л |
Л |
Пример. Написать программу для решения квадратного уравнения a∙x2+b∙x+c=0.
Технологические операции программирования и их выполнение приведены в таблице
Таблица
Этапы программирования |
Выполнение |
1. Постановка задачи |
Написать программу для решения квадратного уравнения a∙x2+b∙x+c=0. |
2. Математическое описание |
|
3. Разработка структограммы |
|
4. Написание программы |
Program P3; Var a,b,c,d,x1,x2:real; Begin a:=1; b:=3; c:=5; D:=sqr(b)-4*a*c; If D>=0 then Begin X1:=(-b+sqrt(D))/2/a; X2:=(-b-sqrt(D))/2/a; Writeln(x1,x2); End Else Writeln(‘Действ.корней нет’); End. |
5. Отладка и получение результатов |
Выполнить самостоятельно |
Оператор выбора (case)
Предназначен для ветвления программ на 2 или несколько направлений.
Case <ключ выбора> of <список выбора> else P end;
<ключ выбора> - идентификатор целого или символьного типа,
<список выбора> - включает в себя две или более конструкций следующего вида:
<константа выбора> : <оператор>;
<константа выбора> - это идентификатор того же типа, что и <ключ выбора>.
Пример. Для 100 целых значений x рассчитать значение .
Составить два варианта программ: с помощью условного оператора if и c помощью оператора выбора Case.
Технологические операции программирования приведены в таблице
Таблица
Технологическая операция |
Выполнение |
1. Постановка задачи |
Для 100 целых значений x рассчитать значение y, |
2. Математическое описание |
Для определения четности воспользуемся оператором mod – остаток целочисленного деления: Если x mod 2=0, то x-четное Если x mod 2=1, то x-нечетное |
3. Разработка структограммы |
|
4. Написание программы |
|
4.1. С помощью оператора If |
Program P4; Var x,y:integer; Begin For x:=1 to 100 do Begin If x mod 2 =0 then y:=2*x else y:=2+x; Writeln(x,y); End; End. |
4.2. С помощью оператора Case |
Program P4; Var x,y:integer; Begin For x:=1 to 100 do Begin Case x mod 2 of 0: y:=2*x; 1: y:=2+x; end; Writeln(x,y); End; End. |
5. Отладка и получение результатов |
Выполнить самостоятельно |
ФУНКЦИЯ И ПРОЦЕДУРА
Функции и процедуры представляют собой важный инструмент Турбо Паскаля, позволяющий писать хорошо структурированные программы.
Функции и процедуры должны быть описаны в разделе описания, обращение к ним производится, как правило, из тела основной программы.
Описание функций и процедур включает заголовок и основную часть описания.
Function F1(<С.Ф.П.>): тип; {для функций},
Procedure Pr(<С.Ф.П.>); {для процедур},
где Function, Procedure – служебные слова, показывающие, что далее следует описание функции и процедуры соответственно,
F1 и Pr – имена функции и процедуры, которые записываются как идентификаторы ТП, <С.Ф.П.> - список формальных параметров.
Входные параметры от выходных при описании процедуры разделяются служебным словом var. Выходным параметром у функции является имя функции.
Пример. Написать программу вычисления площади круга с помощью функции и процедуры.
Технология разработки программы приведена в таблице.
Таблица
Этап программирования |
Выполнение |
1. Постановка задачи |
Написать программу вычисления площади круга с помощью функции и процедуры |
2. Математическое описание |
Формула для площади круга S=π∙R2 |
3. Разработка структограммы |
|
3.1. С использованием функции |
|
3.2. С использованием процедуры |
|
4. Написание программы |
|
4.1. С использованием функции |
Program PY; Var R,S:real; Begin End; Begin R:=3; Writeln(R,S); End. |
4.2. С использованием процедуры |
Program PY; Var R,S:real; Begin End; Begin R:=3; Writeln(R,S); End. |
5. Отладка и получение результатов |
Выполнить самостоятельно |