Укажите общий вид оператора условного перехода в pascal кратко

Обновлено: 04.07.2024

В Паскале проверить какую-то часть программы для определения дальнейшего пути, по которому ей следует идти, есть оператор If . В зависимости от выполнения логического условия он указывает, какой блок выполниться следующим. Существует две формы записи: полная и краткая. Вторая отличается от первой тем что в ней имеется ветвь Else (иначе).

Общий вид краткой формы:

Общий вид полной формы:

В краткой форме выполняется оператор 1 тогда, когда условие A истинно, иначе управление переходит к следующему оператору. В полной форме если условие A истинно, то выполняется оператор 1, иначе выполняется оператор 2. Следует запомнить, что перед else точка с запятой не ставится.

Простейший пример:
If a>b Then a:=a+b Else b:=b+a;

Оператор IF проверяет правда ли, что a больше b . Если правда, то выполняем присвоение после THEN a:=a+b , в противном случае (если ложь) выполняем то, что следует после ELSE — b:=b+a .

В результате выполнения этой строчки в Паскале, переменной a присваивается значение выражения справа, т.е. значение a будет равно 45 .

Пример программы с условным оператором, записанным в краткой форме:

Пример программы с условным оператором, записанным в полной форме:

В Паскале можно вкладывать один условный оператор в другой, причем делать это можно множество раз. При этом следует отметить, что каждому Then соответствует ближайшее Else .

Еще один пример — перевод килограммов в фунты.

2 Оператор выбора

Когда количество альтернатив больше двух применяется оператор выбора Case . Его вид:

Хорошим примером для данного оператора может послужить автомат с напитками, где нужно нажать кнопку соответствующую напитку, который Вы хотите.

Кнопка 1 — Coca-Cola
Кнопка 2 — Fanta
Кнопка 3 — Sprite
Кнопка 4 — Aqua Minerale
Кнопка 5 — Тархун

Т.е. когда Вы нажмете кнопку 3, то автомат выдаст Вам Sprite, конечно если Вы заплатили до этого =). По подобному принципу работает оператор CASE. Приведу пример программы для автомата с напитками.

Если селектором оператора If было логическое выражение, то в Case им выступает переменная, которая может быть целого, перечислимого, интервального или символьного типа. В случае совпадения селектора со значения выполняется соответствующий оператор. Задать значение селектору можно тремя способами:

1) перечислением: 1, 10, 100, 1000

2) диапазоном: ‘d’..’k’

3) перечислением и диапазоном: 1..10, 20, 30, 50, 70..100

Выполнятся в операторе выбора, может только одна ветка (идущая раньше), даже когда селектор совпадает с несколькими значениями. Также, в отличие от If в Case можно ставить точку с запятой перед Else .

Пример программы выбора напитков:

Другой пример использования оператора case на pascal — программа, выбора валюты:

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

Goto m;

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

В этой программе нет никаких условий, но именно о них будет идти далее речь.

Условный оператор:

В Паскале проверить какую-то часть программы для определения дальнейшего пути, по которому ей следует идти, есть оператор If. В зависимости от выполнения логического условия он указывает, какой блок выполниться следующим. Существует две формы записи: полная и краткая. Вторая отличается от первой тем что в ней имеется ветвь Else (иначе).

Общий вид краткой формы:

Общий вид полной формы:

В краткой форме выполняется оператор 1 тогда, когда условие A истинно, иначе управление переходит к следующему оператору. В полной форме если условие A истинно, то выполняется оператор 1, иначе выполняется оператор 2. Следует запомнить, что перед else точка с запятой не ставится.

Пример программы с условным оператором, записанным в краткой форме:

program if_else;
uses crt;
var Dima , Misha : integer ;
begin
Misha := 18 ;
write ( ‘Сколько лет Диме? ‘ ) ;
read ( Dima ) ;
if Dima = Misha then
write ( ‘Миша и Дима ровесники’ ) ;
readkey;
end .

Пример программы с условным оператором, записанным в полной форме:

program if_else;
uses crt;
var Dima , Misha : integer ;
begin
Misha := 18 ;
write ( ‘Сколько лет Диме? ‘ ) ;
read ( Dima ) ;
if Dima = Misha then (* если возраст Димы равен возрасту Мише,
то выполняется оператор 1 *)
write ( ‘Миша и Дима ровесники’ )
else write ( ‘Миша и Дима не ровесники’ ) ;
readkey;
end .

В Паскале можно вкладывать один условный оператор в другой, причем делать это можно множество раз. При этом следует отметить, что каждому Then соответствует ближайшее Else.

Оператор выбора:

Когда количество альтернатив больше двух применяется оператор выбора Case. Его вид:

Если селектором оператора If было логическое выражение, то в Case им выступает переменная, которая может быть целого, перечислимого, интервального или символьного типа. В случае совпадения селектора со значения выполняется соответствующий оператор. Задать значение селектору можно тремя способами:

1) перечислением: 1, 10, 100, 1000

2) диапазоном: ‘d’..’k’

3) перечислением и диапазоном: 1..10, 20, 30, 50, 70..100

Выполнятся в операторе выбора, может только одна ветка (идущая раньше), даже когда селектор совпадает с несколькими значениями. Также, в отличие от If в Case можно ставить точку с запятой перед Else.

Рассмотрим программу, в которой условия проверяет оператор выбора.

program case_primer;
uses crt;
var money : char ;
begin
write ( ‘Первая буква кода денежной единицы: ‘ ) ;
readln ( money ) ;
case money of
‘A’ , ‘a’ : writeln ( ‘Французский франк’ ) ;
‘B’ , ‘b’ : writeln ( ‘Динар’ ) ;
‘C’ , ‘c’ : writeln ( ‘Юань’ ) ;
‘E’ , ‘e’ : writeln ( ‘Испанская песета’ ) ;
‘G’ , ‘g’ : writeln ( ‘Английский фунт стерлингов’ ) ;
‘I’ , ‘i’ : writeln ( ‘Итальянская лира’ ) ;
‘J’ , ‘j’ : writeln ( ‘Иена’ ) ;
‘R’ , ‘r’ : writeln ( ‘Рубль’ ) ;
‘U’ , ‘u’ : writeln ( ‘Доллар США’ ) ;
‘X’ , ‘x’ : writeln ( ‘Восточнокарибский доллар’ ) ;
else writeln ( ‘Неизвестная единица’ )
end ;
readkey;
end .

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

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

Переход осуществляется при помощи так называемых меток.
Метка — это идентификатор или целое число без знака в диапазоне от 0 до 9999, которое находится перед каким-либо оператором программы и отделен от него двоеточием. Все используемые в программе метки должны быть предварительно объявлены в разделе объявления меток, начинающимся СЛОВОМ label.

Можно теоретически показать, что рассмотренных операторов вполне достаточно для написания программ любой сложности. В этом отношении наличие в языке операторов перехода кажется излишним. Более того, современная технология структурного программирования основана на принципе “программировать без GOTO”: считается, что злоупотребление операторами перехода затрудняет понимание программы, делает ее запутанной и сложной в отладке. Тем не менее в некоторых случаях использование операторов перехода может упростить программу.

Оператор перехода имеет вид:

Здесь goto — зарезервированное слово (перейти [на метку]); — метка.

Label 1; // Объявляем метку с именем 1 var
a: Integer; begin
a: = 10;
Goto 1; // Переход на метку 1
а := sqrt(a); // Этот оператор не будет выполняться никогда! 1: а := а + а; // Оператор, помеченный меткой 1 end;

Операторы условного перехода

Оператор условия предназначен для выполнения или невыполнения каких-либо действий, зависящих от результата условия типа Boolean. Этот оператор применяют для разветвления выполнения программы,
т. е. если данное условие истинно (и только в этом случае!), то выполняется некоторая последовательность операторов, в противном случае выполняются другие операторы. Вид оператора условия таков:

if условие then оператор1 else оператор2;

Оператор условия может быть записан и в упрощенной форме:

if условие then оператор;

Приведем примеры использования операторов условия:

if а > 0 then b: = sqrt (a) else b: = a * 2; // Оператор условия
if a = 10 then b: = b + 1; // Упрощенная форма

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

Условный оператор в Паскале

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

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

Блок-схема условного оператора:

Условный оператор в Паскале имеет следующий синтаксис:

if условие then оператор;

Полный вариант:

if условие then оператор else оператор;

Условный оператор в Паскале — if — служит для организации хода задачи таким образом, при котором изменяется последовательность выполнения операторов в зависимости от какого-либо логического условия. Логическое условие может принимать одно из двух значений: либо true (истина), либо false (ложь), соответственно, оно может быть либо истинным, либо ложным.

неполная форма ветвления

Составной оператор

Если при истинном условии необходимо выполнять несколько операторов, то их по правилам языка Pascal необходимо заключать в блок, начинающийся со служебного слова begin и заканчивающегося служебным словом end . Такой блок принято называть операторными скобками, а данную конструкцию — составным оператором:

Операторные скобки и составной оператор в Паскале:

if логическое выражение then begin оператор1; оператор2; end else begin оператор1; оператор2; end;

Перевод с английского оператора условия облегчит понимание его использования:

IF THEN ELSE
ЕСЛИ ТО ИНАЧЕ

Условный оператор в Паскале


В условии (в логическом выражении) используются операторы отношения.
Рассмотрим список операторов отношения Паскаля:

  • больше >
  • меньше
  • больше или равно в Pascal >=
  • меньше либо равно в Pascal
  • сравнение в Pascal =
  • не равно в Pascal <>

Подробно разобраться в работе условного оператора в Паскале можно, просмотрев видеоурок:

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

Чаще всего в качестве условного оператора в языках программирования используется конструкция if-else или ее сокращенный вариант if. Также существует оператор выбора case, который имеет более специфичное применение.

Блок схема оператора if-else и case

Оператор if-else

Когда выполнение основной ветки программы доходит до условного оператора if-else, то в зависимости от результата логического выражения в его заголовке выполняются разные блоки кода. Если логическое выражение вернуло true, то выполняется один блок (в Паскале начинается со слова then), если false – то другой (начинается со слова else). После выполнения одного из вложенных блоков кода, ход программы возвращается в основную ветку. Другой вложенный блок не выполняется.

Бывают неполные формы условных операторов. В таком случае вложенный в if блок кода выполняется только в случая true логическом выражении заголовка. В случае false выполнение программы сразу передается в основной блок. Понятно, что ветка else в таком случае отсутствует.

Читайте также: