Następnie program kontynuuje od pierwszej komendy po end if.

Wiele języków programowania umożliwia zdefiniowanie więcej niż jednego warunku do sprawdzenia przy pomocy opcjonalnego bloku else-if:

if warunek 1 then pierwszy blok kodu else-if warunek 2 then drugi blok kodu else-if warunek 3 then trzeci blok kodu else alternatywny blok kodu end if

W tym wypadku warunki ewaluowane są po kolei do momentu, gdy któryś z nich nie da wartości true – wykonywany jest wtedy przypisany mu blok kodu. Jeśli żaden z warunków nie będzie prawdziwy, wykonywany jest blok alternatywny. Bez względu na ilość prawdziwych warunków, zawsze wykona się tylko pierwszy z nich, a pozostałe zostaną pominięte.

W pewnych językach programowania dostępna jest konstrukcja analogiczna do opisanej wyżej instrukcji warunkowej, której działanie jest jednak odwrotne do powyższego, tzn. pierwszy blok kodu wykonywany jest, gdy warunek 1 nie jest spełniony, a inne warunki fraz else w przeciwnym razie. Jest to więc równoważnik konstrukcji if not(warunek) then instrukcja. Dla odróżnienia od konstrukcji pierwotnej stosuje się w tym przypadku inne słowo kluczowe, np. unless, w języku BCPL i pochodnych (np.