Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Операторы условия и перехода
Строки программы на Паскале не нумеруются. Отдельные строки в программе могут иметь метки, к которым можно переходить. Метки должны быть описаны в программы с помощью ключевого слова
label N1, N2 … ; где N1, N2, … - метки. Метками могут быть идентификаторы или целые числа (положительные) в диапазоне 0 9999. Оператор перехода по метке:
goto N; Где N - метка. Фрагмент программы с использованием меток:
program pr; label 3; var x, y: real; begin 3: readln (x, y); ... go to 3; ... end.
Логический оператор
if < условия > then P1 [else P2 ]; (если ) (то ) (иначе) [ else P2 ] - не обязательная часть оператора. Где <условие> - логическое выражение; P1, P2 - простые или составные операторы. По этому оператору: если <условие> - "истинно" (true), то выполняется P1, если - " ложно" (false), то выполняется P2. Перед структурой else «;» - не ставится. Если else - отсутствует и <условие> - "ложно", то управление передается следующему оператору. Приведем примеры использования оператора:
if a>b then writeln(‘a=’,a) else writeln(‘ b=’,b);
If x>=0 then y: = sin(x) else y: = - sin(x);
if a<0 then begin b:=2*a; writeln(b); end else begin b:=a/2; goto 3; end;
Операции отношения
Логические операции
В операторе if можно одновременно проверять несколько условий. Например: if (a>b)and(a>c) then writeln(’a - max’); При проверке нескольких условий в одном операторе, каждое условие записывается в скобках. Паскаль допускает вложенность операторов if. Например: if n>0 then if (m div n)>n then m: = m - n else m: = m + n; Структура else - всегда относится к ближайшему оператору if. Если n>0 и (m div n)>n - будет выполнено m: = m-n. Если n>0, но (m div n) n - будет выполнено m: = m + n. Если n 0 - переход к следующему оператору.
Задача.
Найти максимальное число из трех вещественных чисел.
program max; var a, b, c: real; begin writeln (’введите a, b, c’); readln (a, b, c); if a>=b then if a>=c then writeln (’max - a’) else writeln (’max - c’) else if b<=c then writeln (’max - b’) else writeln (’max - c’) ; readln; end.
Второй способ решения этой задачи:
program max_1; var a, b, c: real; begin writeln (’введите a, b, c’); readln (a, b, c); if (a>=b) and (a>=c) then writeln (’max-a’); if (b>=a) and (b>=c) then writeln (’max-b’); if (c>=a) and (c>=b) then writeln (’max-c’); readln; end. Если a=b=c - то все три оператора if будут выполнены.
Оператор выбора Этот оператор предназначен для замены конструкций из вложенных if. Структура: case N of N1: P1; N2: P2; NN: PN; [else P;] end; [else P;] - необязательная часть оператора. где N - целочисленная переменная, или выражение целого типа; N1, N2 , … NN - возможные значения переменной N; P, P1, P2, … PN - простые или составные операторы. По этому оператору: если значение N = N1, то выполняется P1 (после чего управление передается оператору, следующему за оператором case...of); если значение N = N2, то выполняется P2, (после чего управление передается оператору, следующему за оператором case...of); … если N не принимает ни одного из перечисленных значений, управление передается оператору P; если структура else - отсутствует и N - не принимает ни одного из перечисленных значений, управление передается следующему за case...of оператору. Например: case N of 1, 2, 5: writeln (’a’); 7 .. 10: writeln (’b’); end;
1, 2, 5 - перечисляемые значения разделяются точкой. 7 .. 10 - интервал задается начальными и конечными значениями через двоеточие.
|
||||||||||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 401. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |