"Программы без ошибок можно написать
двумя способами, но работает — третий"
Алан Джей Перлис

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

Всем привет, давно я не писал статей для сайта – все времени не было. Ну ничего, восполним упущенное. Усаживайся поудобнее, сегодня мы будем изучать условный оператор If.

Что же это за зверь такой – условный оператор? И зачем он вообще нужен? Без него же мы как-то решили первую задачку про периметр прямоугольника. Да, если бы все задачи, которые стояли перед программистами были такого плана, как задача про периметр, то он и не понадобился бы вовсе. Однако, на деле не все так просто.

Условный оператор If позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Поэтому оператор If выступает в качестве средства ветвления вычислительного процесса. Приведу общую структуру записи условного оператора, а затем разберем на примере его работу.

В общем виде условный оператор в программе выглядит так:

If <условие> then <оператор 1> else <оператор 2>
где
If, then, else – зарезервированные слова (в переводе на русиш - если, то, иначе);
<условие> - произвольное выражение логического типа. Если оно дает значение true, оператор 1 выполняется, в противном случае выполняется оператор 2 (если он существует);
<оператор 1>, <оператор > - любые операторы языка Pascal

    Работает вся эта штука по следующему принципу:
  1. Вычисляется условное выражение <условие>
  2. Если значение условия = true, то выполняется оператор 1, а оператор 2 пропускается.
  3. Если значение условия = false, то оператор 1 пропускается, а выполняется оператор 2.

Часть else <оператор 2> оператора If может быть опущена за ненадобностью. Тогда, если значение условия = true, то оператор 1 выполняется, в противном случае условный оператор просто пропускается и программа идет дальше.

Наверно, не буду вас сейчас мучить вложенными условными операторами (это когда в условии одного оператора if находится другой оператор if, а в его условии может находится еще один, и т.д). Разберем это на следующем занятии, а пока решим задачку. Задачку я возьму из электронного задачника М.Э. Абрамяна. Кстати, этот задачник идет вместе с программой Pascal ABC, которую ты можешь скачать с этого сайта тут, если еще не сделал этого.

Условие задачи: «Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число». У кого какие мысли по поводу решения этой задачи?

    В общем план действий такой:
  1. Объявляем целочисленную переменную (типа integer);
  2. Присваиваем ей значение;
  3. Применяем условный оператор If, в условии которого будем проверять положительная ли переменная;
  4. Если наша переменная положительная, то прибавим к ней 1, если нет, то не будем ее трогать;
  5. Выведем переменную на экран.

Поехали! Для начала запишем название программы и объявим переменную, нам потребуется только одна переменная целого типа:

program positive;
var A:integer;
begin
// Сделаем возможным ввод значения переменной с клавиатуры:
writeln(‘Введите значение переменной’);
read(A);
// Применяем условный оператор:
if A>0 then 
A:=A+1;
// Выводим переменную на экран:
write(‘A =’,A);
end.

Собственно и вся задача))

На этом все. Жду ваших вопросов, кому что не понятно. Контакты для связи со мной находятся здесь. Удачи и до встречи на следующем уроке!