Gunakan if .. then atau if .. then .. else untuk menjalankan kode yang sesuai saat kondisi bernilai benar. Berbeda dengan bahasa keluarga C: ekspresi kondisi di Pascal tidak perlu dibungkus tanda kurung.
var
A: Integer;
B: boolean;
begin
// Hanya satu perintah jika kondisi terpenuhi, tidak perlu begin end
if A > 0 then
DoSomething;
// Beberapa perintah setelah kondisi, wajib bungkus dengan begin end
if A > 0 then
begin
DoSomething;
AndDoSomethingMore;
end;
// Struktur if-else satu baris
if A > 10 then
DoSomething
else
DoSomethingElse;
// Logika sama persis dengan kode di atas: simpan hasil perbandingan ke variabel boolean terlebih dahulu
B := A > 10;
if B then
DoSomething
else
DoSomethingElse;
end;Code language: JavaScript (javascript)
Aturan pasangan else
else akan berpasangan dengan if terdekat yang belum memiliki pasangan else. Kode di bawah berjalan sesuai harapan:
if A <> 0 then
if B <> 0 then
AIsNonzeroAndBToo
else
AIsNonzeroButBIsZero;Code language: HTML, XML (xml)
Else di sini milik if bagian dalam if B <> 0.
If bersarang tanpa blok diperbolehkan secara sintaks tapi sulit dibaca. Disarankan bungkus seluruh logika bersarang dengan begin … end agar batas logika jelas; meskipun indentasi berantakan, pembaca mudah membedakan cakupan dan menghindari bug saat menambah atau menghapus cabang.
Cara penulisan standar yang dioptimalkan:
if A <> 0 then
begin
if B <> 0 then
AIsNonzeroAndBToo
else
AIsNonzeroButBIsZero;
end;Code language: HTML, XML (xml)
- Kondisi setelah if tidak pakai kurung (wajib di C/C++/Java, kebalikan di Pascal);
- Jika hanya satu baris setelah then:
begin endbisa dihilangkan; jika banyak baris wajib pakai; elseberpasangan dengan if dalam terdekat; untuk struktur bersarang selalu gunakan blok agar tidak ada makna ganda;- Ekspresi perbandingan (contoh:
A>10) bisa langsung dimasukkan ke variabel boolean.
Berikut contoh lengkap yang bisa dijalankan: sistem penilaian skor ujian
Aturan logika:
- ≥90 → A
- ≥80 dan <90 → B
- ≥60 dan <80 → C
- <60 → D
{$ifdef FPC} {$mode objfpc} {$H+} {$endif}
{$codepage utf8}
program ScoreLevel;
var
score: Integer;
begin
Write('Masukkan skor ujian: ');
ReadLn(score);
if score >= 90 then
Writeln('Nilai: A')
else if score >= 80 then
Writeln('Nilai: B')
else if score >= 60 then
Writeln('Nilai: C')
else
Writeln('Nilai: D');
ReadLn;
end.Code language: PHP (php)
Kompilasi lalu jalankan program
Masukkan skor ujian: 96
Nilai: A
Program akan meminta Anda memasukkan skor, lalu menampilkan nilai yang sesuai.
Karakter non-Inggris bisa muncul rusak, tambahkan baris ini: {$codepage utf8}
Kita juga bisa bungkus logika penentuan nilai ke dalam fungsi.
{$ifdef FPC} {$mode objfpc} {$H+} {$endif}
{$codepage utf8}
program ScoreLevelFunc;
function GetLevel(s: Integer): string;
begin
if s >= 90 then
Result := 'A'
else if s >= 80 then
Result := 'B'
else if s >= 60 then
Result := 'C'
else
Result := 'D';
end;
var
score: Integer;
begin
Write('Skor Anda: ');
ReadLn(score);
Writeln('Nilai Anda: ', GetLevel(score));
ReadLn;
end.Code language: PHP (php)

Pemeriksaan kondisi if