Условный оператор if-then-else

b

Основы условного оператора if-then-else в Delphi

В языке Delphi условная конструкция if-then-else — это базовый механизм для управления потоком выполнения программы. Она позволяет задать альтернативные пути работы в зависимости от истинности или ложности некоторого выражения. В отличие от многих других языков, Pascal-семейство (и Delphi в частности) использует строгий синтаксис с ключевыми словами then и else, а также обязательное использование begin…end для блоков из нескольких инструкций.

Конструкция имеет две формы: сокращенная (без else) и полная (с ветвью else). Синтаксически важно помнить, что перед else не ставится точка с запятой — это одна из частых ошибок начинающих.

Синтаксис и базовые примеры

  1. Сокращенная форма: if условие then действие; — выполняется только при истинности. Если действие больше одной строки, используйте begin ... end.
  2. Полная форма: if условие then действие1 else действие2; — при ложности условия выполняется блок после else.
  3. Вложенные конструкции: разрешены, но злоупотребление снижает читаемость. Рекомендуется заменять глубокую вложенность на case of или вынос логики в отдельные функции.

Пример для новичков:

var score: Integer;
begin
score := 75;
if score >= 60 then
WriteLn('Зачет получен')
else
WriteLn('Нужно пересдать');
end;

Для кого эта конструкция? Анализ сегментов аудитории

Сайт предназначен для разработчиков на Delphi — от студентов до инженеров legacy-систем. Рассмотрим разные сегменты:

Критерии выбора: какую форму if применять?

Выбор между сокращенной и полной формой диктуется логикой приложения. Если действие приложимо только при истинности — используйте if-then. Если нужно обработать как истину, так и ложь — полная форма. Совет: избегайте пустых блоков после then или else — это ухудшает понимание. Для проверки множества взаимоисключающих значений предпочтительнее case of — он читается легче и выполняется быстрее за счет таблицы переходов.

Типичные ошибки и как их избежать

Советы по стилю для Delphi 2026

Современные редакторы Delphi (версии 11/12, Embarcadero 2026) поддерживают подсветку синтаксиса и рефакторинг. Рекомендуется: всегда выравнивать begin на уровень вложенности, ставить пробелы вокруг операторов сравнения, избегать «магических чисел» в условиях — используйте константы. Для проверки на nil в Delphi используйте Assigned — это стандарт идиомы.

Пример хорошего стиля:

const
PASS_THRESHOLD = 60;
var
studentScore: Integer;
begin
studentScore := GetCurrentScore();
if studentScore >= PASS_THRESHOLD then
begin
RegisterPass();
NotifyStudent('Поздравляем!');
end
else
begin
RegisterFail();
NotifyStudent('Готовьтесь к пересдаче.');
end;
end;

Такая запись легко читается, поддерживается и не вызывает вопросов у коллег.

Заключение

Условный оператор if-then-else — основа управляющих конструкций Delphi. Его освоение — обязательный этап для любого разработчика, независимо от уровня. Практикуйтесь на простых задачах, переходите к вложенным сценариям, изучайте альтернативы (case of) и помните о читаемости. Материалы сайта помогут вам шаг за шагом освоить все тонкости.

Добавлено: 27.04.2026