Error: Incorrect password!
Error: Incorrect password!
Самоучитель Паскаль :: Введение в Pascal

Самоучитель Паскаль


Условия if then else в Паскаль
Август 28, 2022 – 13:34
Pascal ABC 3.0.1

Условия if then else в Паскаль09 Июн 13

Комментарии : 1 Просмотры : 11463


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

Так что следует уделить этой теме особое внимание, учитываю то, что она проста и легка для понимания.

Начнем с того, что поясним что такое условие в принципе. Думаю нетрудно догадаться, что условие это некоторая развилка на два пути истинное ( true ) и ложное ( false ).
Истинное условие выполняется в том случае, когда условие истинно, то есть условие возвращает истинное значение ( позже будет понятнее ).
Ложное условие выполняется в том случае, когда условие ложно.

Условиe ifРассмотрим эту конструкцию на примере .Например нам нужно узнать больше ли первое число второго . Проще говоря ввести два числа "а" и "b" и если а больше б, то вывести "а больше".
Делается это проще простого.

If ( если )

Условие записывается в скобках между словами if ( если ) и then ( тогда ).
В нашем случае нам понадобится такое условие if ( a > b ) then . Если условие "а больше б" возвращает истинный результат, то после слова then выполняется первая команда . Например :

После выполнения данной программы, если условие истинное и "а" больше "б", на экран будет выведено сообщение A больше. Однако следует заметить, что если мы хотим в результате выполнения условия выполнять несколько команд, то их следует заключать в блок begin end.


Else ( иначе )

Допустим условие задачи такое - Ввести два числа с клавиатуры "a" и "b", если "а" больше вывести число "а", иначе вывести число "b".

Использование нескольких командБлок else ( иначе ) записывается после тела истинного значения . Запомните перед else ; никогда не ставится !

Если же в теле ложного значения мы хотим выполнить несколько команд ( больше одной ), то в аналогии с телом истинного значения, эти команды заключаются в блок begin end


Сложные условия :

В аналогии с простыми существуют и сложные условия . Пример простого условия ( a = b ) . Пример сложного ( a > b ) and ( a b ). Дословно - если "а" больше "б" и "а" неравно "б" тогда ... В данном случае блок then будет выполнятся тогда и только тогда, когда обе скобки возвращают истинный результат . Если хоть одна из скобок возвращает ложный, то будет выполнен блок else ( если он есть ). Разберем пример ещё одного условия ( сложного ). if ( (a > b) and ( a b ) ) or ( a = c ) then в этом случае блок then будет выполнятся в том случае, если "а" больше "б" и "а" неравно "б" или "а" равно "с".

Несколько команд в блоке elseВложенные условия :

В одном условии могут находится ещё несколько условий, а в них ещё столько же условий. Проще говоря условия могут вкладываться в другие условия. Для того, чтобы вам было более понятно приведем такой пример. Например у нас есть массив из 10 элементов, заполненный случайными числами, а нам нужно найти отрицательное число и вывести его на экран если индекс отрицательного элемента будет четным. Код данной программы выглядит вот так :

Код


program mypascal; a: array[1..10] of integer;
i:integer;
begin

for i:= 1 to 10 do
a[i]:= random(21)-10;
for i:= 1 to 10 do
if ( a[i] < 0 ) then
if ( i mod 2 = 0 ) then
writeln(a[i]);

end.

Однако данные вложенные условия можно было заменить одним : if ( a[i]

Вывод :

Выше на картинке показано как именно работают условия в языке программирования pascal. Если условие, которое указано в скобках, в данном случае это a > b, истинно, то будет выполнен код по ветки истинности. Если условие ложное, то будет выполнен код по ветке ложности.
  • Условие записывается в скобках между словами if ( если ) и then ( тогда ).
  • Если условие истинное, например ( 4 > 3 ), то выполняется блок then, если условие ложное ( 3 > 4 ) выполняется блок else.
  • Если мы хотим выполнить больше одной команды в условии их следует заключать в блок begin end.
  • Перед else точка с запятой не ставится !
Source: mypascal.ru
Похожие публикации