Оператор if використовується, якщо у алгоритмі у залежності від стану якогось процесу потрібно виконати ту чи іншу дію.
 Повна версія оператору має вигляд:
  
 if умова then оператор1 else оператор2 ;
  
 Тобто “якщо виконуються умова, то виконувати оператор1, якщо ні – то оператор2”.
 Бувають випадки, коли у алгоритмі вимагається умовний оператор “якщо виконуються умова, то виконувати оператор1”. Тоді його вигляд буде:
  
 if умова then оператор1;
  
 Зазначимо, що перед else символ “;” ніколи не ставиться.
  
 Виходячи з вигляду оператору слід відзначити, що за виконання умови чи ні може виконуватись тільки один оператор (оператор1 чи оператор2). Якщо необхідним є виконання кількох операторів, то слід використовувати складний оператор begin – end. Тоді всі необхідні команди будуть розташовуватись між begin та end, як це зазначалось вище.
  
 Наприклад
  
 if a>max then max:=a else max:=b;
  
 if a[i]>a[i+1] then
  begin
  a[i]:=a[i]+a[i+1];
  a[i+1]:=a[i]‑a[i+1];
  a[i]:=a[i]‑a[i+1];
  end;
  
 У наведених прикладах використовується проста умова, тобто умова, що використовує тільки одне порівняння. Оператор if допускає ще і складні умови. Тоді вони записуються у дужках ( ). Наприклад:
  
 if ( a>b and b>c) then midd:=b ;
  
 Нехай нам потрібно написати програму, яка при натисканні на клавішу Button1, зчитує з рядку редагування Edit1 текст і, якщо цим текстом є рядок “автотекст”, то надпис на клавіші міняється на “введіть свій текст”, у противному разі – на клавішу виводиться текст, введений користувачем у Edit1, і у Edit1 виводиться текст “автотекст”.
  
 Для цього нам спочатку треба на формі розташувати два об'єкти: кнопку Button1 та рядок редагування Edit1. Після цього встановити головну подію для кнопки Button1 подвійним натисканням на неї. Далі, у автоматично згенерованій процедурі
 procedure TForm1.Button1Click
 дописати алгоритмічну частину, яка матиме вигляд
  
 procedure TForm1.Button1Click(Sender: TObject);
 begin
 if Edit1.Text=’автотекст’
 then Button1.Caption:=' введіть свій текст '
 else
 begin
 Button1.Caption:=Edit1.Text;
 Edit1.Text:= ‘автотекст’;
 end;
 end;