Aksi setelah then pada pernyataan if pada contoh program sebelumnya hanya merupakan statemen tunggal, jadi tidak diperlukan begin dan end;. Akan tetapi aksi setelah else merupakan aksi dengan statemen yang majemuk, jadi dibutuhkan begin dan end;.

Perhatikan statemen pertama pada blok else. Statemen tersebut adalah statemen faktorial:=1 yang merupakan statemen yang sama dengan statemen pada bagian setelah then. Oleh karena itu, kita bisa merubah susunan program menjadi sebagai berikut:

program HitungFaktorial2;
{$APPTYPE CONSOLE}
var
  n,i,faktorial:cardinal;  
begin
  Write('Masukkan sebuah bilangan: ');
  Readln(n);
  faktorial:=1;
  if(n<>0)then for i:=1 to n do faktorial:=faktorial*i;
  Write('Faktorial dari ',n);
  Writeln(' adalah ',faktorial);
  Writeln('Tekan Enter');
  Readln;
end.

Isi variabel faktorial ditentukan berisi 1. Hanya jika n tidak sama dengan nol maka nilai faktorial perlu diganti.

Program ini akan menghasilkan nilai yang tepat sama dengan program yang pertama.

Time limit is exhausted. Please reload the CAPTCHA.

Beritahu saya melalui email jika ada balasan komentar di artikel ini. Anda juga dapat berlangganan tanpa harus memberi komentar.