Latihan Kode Program Pascal: Cara Menghitung Faktorial

Latihan kode program bahasa Pascal kali ini akan membahas cara menghitung nilai faktorial. Materi ini berhubungan dengan logika matematika serta konsep perulangan.


Soal Menghitung Faktorial

Buatlah kode program Pascal yang menerima satu inputan angka. Kode program akan mencari nilai faktorial dari angka tersebut dan menampilkan hasilnya.

Bonus: Buat juga versi yang menampilkan angka perkalian, bukan hasilnya saja.

Berikut hasil yang di inginkan:

##  Program Pascal Menghitung Faktorial  ##
===========================================

Input angka: 13
13! = 6227020800

Berikut hasil yang di inginkan (soal bonus):

##  Program Pascal Menghitung Faktorial  ##
===========================================

Input angka: 11
11! = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 * 11 = 39916800

Tips Membuat Kode Program Menghitung Faktorial

Soal ini melatih pemahaman terkait logika matematika dan konsep perulangan (looping). Berikut tutorial pendahuluan yang bisa diikuti:

Dalam matematika, faktorial adalah hasil perkalian menaik, dan ditulis dengan tanda seru " ! ". Sebagai contoh, 4 faktorial ditulis dengan 4!, dan nilainya adalah 1 * 2 * 3 * 4 = 24, atau 7 faktorial ditulis dengan 7! = 1 * 2 * 3 * 4 * 5 * 6 * 7 = 5040.

Untuk membuat kode program ini kita perlu sebuah perulangan for. Dalam setiap iterasi, simpan hasil perkalian variabel counter yang dibuat menaik.

Silahkan anda coba sebentar membuat kode program ini.


Kode Program Bahasa Pascal Menghitung Faktorial

Berikut salah satu solusi dari soal menghitung faktorial menggunakan bahasa pemrograman Pascal:

program menghitung_faktorial;
uses crt;
var
  angka, i: integer;
  hasil: qword;
begin
  clrscr;
  writeln('##  Program Pascal Menghitung Faktorial  ##');
  writeln('===========================================');
  writeln;
  
  write('Input angka: ');
  readln(angka);

  hasil := 1;
  for i := 1 to angka do
  begin
    hasil := hasil * i;
  end;

  writeln(angka,'! = ', hasil);
  
  readln;
end.

Latihan Kode Program Pascal - Cara Menghitung Faktorial 1

Dalam kode program, variabel angka akan menampung angka yang diinput oleh user. Proses pembacaan dilakukan di baris 13 dengan perintah readln(angka).

Sebelumnya di baris 5 variabel angka saya defenisikan dengan tipe data qword. Ini adalah tipe data integer terbesar dalam bahasa Pascal. Tipe data qword sanggup menampung angka 0 hingga 18446744073709551615. Jika menggunakan tipe data integer, maka angka maksimal hanya 32767 atau 2147483647 (tergantung jenis compiler).

Kemudian di baris 16 terdapat perulangan for do mulai dari i := 1 hingga angka. Dalam setiap iterasi, variabel hasil dipakai untuk menampung operasi hasil * i.

Setelah perulangan, variabel hasil akan berisi jumlah perkalian dari 1 * 2 * 3 * dst. Variabel inilah yang kemudian ditampilkan dengan perintah writeln di baris 21.


Kode Program Bahasa Pascal Menghitung Faktorial (plus Angka)

Untuk bonus soal, kita harus menampilkan angka hasil perkalian, yakni 1 * 2 * 3 * dst.

Sekilas ini tampak mudah karena tinggal menambah satu perintah write(i,' ')  ke dalam perulangan. Namun terdapat sedikit masalah karena di angka terakhir, tanda perkalian " * " akan selalu tampil. Bagaimana caranya agar di perulangan terakhir tidak perlu tampil tanda perkalian? kita butuh bantuan kondisi if:

program menghitung_faktorial;
uses crt;
var
  angka, i: integer;
  hasil: qword;
begin
  clrscr;
  writeln('##  Program Pascal Menghitung Faktorial  ##');
  writeln('===========================================');
  writeln;
  
  write('Input angka: ');
  readln(angka);

  write(angka,'! = ');

  hasil := 1;
  for i := 1 to angka do
  begin
    hasil := hasil * i;
    // untuk menampilkan angka
    write(i);
     if(i <> angka) then
     begin
      write(' * ');
     end;
  end;

  writeln(' = ', hasil);
  
  readln;
end.

Tambahan kode program ada di baris 22-26. Dalam setiap iterasi, perintah write(i) akan selalu dijalankan. Akan tetapi untuk tanda bintang / kali, hanya dijalankan jika memenuhi kondisi if(i <> angka). Kondisi ini akan bernilai true selain di perulangan terakhir.

Dengan cara tersebut, tanda bintang tidak akan tampil di akhir. Berikut tampilan kode program:

Latihan Kode Program Pascal - Cara Menghitung Faktorial

Dengan ini, tampilan kode program menghitung faktorial menjadi lebih lengkap.


Demikian kode program menghitung faktorial menggunakan bahasa pemrograman Pascal. Semoga bisa bermanfaat.


eBook Pascal Uncover Duniailkom
Apabila anda serius ingin mempelajari Pascal dan butuh materi Pascal yang jauh lebih lengkap, Duniailkom telah menerbitkan eBook Pascal Uncover yang membahas bahasa pemrograman Pascal dari dasar hingga procedure, function dan contoh kasus. Penjelasan lebih lanjut bisa ke eBook Pascal Uncover Duniailkom.

Add Comment