10.01.2021
Новый выпуск журнала Автоматизация и Программирование.
08.12.2020
Новые видео и статья Таблицы в HTML.
03.12.2020
Новый выпуск журнала Автоматизация и Программирование.
15.11.2020
Новые видео и статья Процедура Str.
25.10.2020
Добавлен курс Как стать веб-разработчиком.
Условный оператор
![]() |
Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее... |
В общих чертах с условным оператором мы уже познакомились в статье Операции сравнения. Сегодня поговорим об это более подробно.
Напомню, как выполняется ветвление в Паскале:
if … then … else
Эта конструкция работает так:
if (если) выполняется условие then (то) выполняем этот код else (иначе) если условие не выполняется выполняем этот код
Кроме того, условный оператор может быть сокращённым, то есть без использования слова else. Сокращённый вариант применяется в тех случаях, когда при несоблюдении условия никаких действий выполнять не надо.
Например, какая-то программа должна проверять значение температуры. Если температура ниже минимальной, то надо выдать сообщение. А если нет, то ничего не предпринимать и продолжить работу. Если вы помните наш алгоритм похода за молоком (рис. 4.2), то там надо выполнять именно эту операцию - проверку температуры, то есть определять, насколько холодно на улице. Выглядеть это будет примерно так:
var Temperatura : integer; begin Temperatura := -20; WriteLn('Get the money'); //Взять деньги if Temperatura < 0 then //Если температура ниже нуля WriteLn('Dress warmly'); //то тепло одеться WriteLn('Go to the store'); //Пойти в магазин WriteLn('...'); //Ну и так далее... ReadLn; end.
Здесь мы проверяем значение переменной Temperatura. Если оно меньше нуля, то выводим строку “Dress warmly” (тепло одеться). Иначе, если температура равна или больше нуля, то программа ничего не делает, а просто переходит к следующей строке кода.
Ну и для закрепления материала снова вернёмся к нашему калькулятору. Посмотрите ещё раз внимательно исходный код и попробуйте определить, какие ещё ошибки могут возникнуть при вводе данных и сможем ли мы их избежать с помощью ветвления.
program ifelse; {$mode objfpc}{$H+} uses {$IFDEF UNIX}{$IFDEF UseCThreads} cthreads, {$ENDIF}{$ENDIF} Classes { you can add units after this }; var x, y : integer; begin Write('x = '); ReadLn(x); Write('y = '); ReadLn(y); WriteLn('x + y = ', x + y); WriteLn('x - y = ', x - y); WriteLn('x * y = ', x * y); if y = 0 then WriteLn('!!! Error: Division by ZERO !!!') else WriteLn('x div y = ', x div y); ReadLn; end.