Kali ini kita akan belajar membuat sebuah kalkulator sederhana yang dibumbui dengan sedikit animasi menggunakan pascal. Aplikasi kalkulator ini bisa digunakan untuk menjumlahkan hasil dari penjumlahan dan perkalian yang diinputkan. Namun nantinya temen-temen bisa mengembangkannya menjadi sebuah kalkulator sesuka selera.

Membuat Kalkulator Animasi Sederhana Menggunakan Pascal

Halo temen-temen, kali ini kita akan belajar membuat sebuah kalkulator sederhana yang dibumbui dengan sedikit animasi menggunakan pascal. Aplikasi kalkulator ini bisa digunakan untuk menjumlahkan hasil dari penjumlahan dan perkalian yang diinputkan. Namun nantinya temen-temen bisa mengembangkannya menjadi sebuah kalkulator sesuka selera.

Ini menjawab tantangan guru saya dulu pada waktu masih kelas 1 smk dimana kami ditantang untuk membuat kalkulator sederhana menggunakan pascal dimana dalam berpindah untuk menginputkan angka menggunakan enter dan saat operasi tidak langsung muncul hasilnya namun seakan loading terlebih dahulu.

Saya harap temen-temen disini sudah paham ya dengan perintah dasar dari bahasa pemrograman pascal seperti begin, end, var, procedure, gotoxy, readln, textcolor, penjumlahan, perkalian, dll.

 

OK sekarang kita mulai,

Silakan temen-temen buka program pascalnya.

Pertama-tama silakan definisikan nama program dan variabelnya. Untuk program ini kita hanya menggunakan satu jenis tipe data dan 6 varibabel.

Definisi nama program dan variabelnya bisa seperti ini.

program kalkulator;
uses crt;
var
a,b,c,d,e,f,g:longint;

Langkah selanjutnya adalah mendefinisikan procedure yang berisi perintah yang akan kita panggil nantinya. Ini untuk memudahkan kita jika kita membutuhkan kode yang sama tinggal memanggil procedure ini. Kita akan membuat 6 procedure berisi kode berbeda..

Procedure pertama,

Ini berisi kode yang berfungsi ini memanggil karakter '=' secara bertahap dengan waktu 100 milisecond pada titik yang telah didefinisan melalui perintah gotoxy. Sehingga menimbulkan animasi.

procedure satu;
begin
textcolor(white);
       gotoxy(5,5);write('=');delay(100);
       gotoxy(6,5);write('=');delay(100);
       gotoxy(7,5);write('=');delay(100);
       gotoxy(8,5);write('=');delay(100);
       gotoxy(9,5);write('=');delay(100);
       gotoxy(10,5);write('=');delay(100);
       gotoxy(11,5);write('=');delay(100);
       gotoxy(12,5);write('=');delay(100);
       gotoxy(13,5);write('=');delay(100);
       gotoxy(14,5);write('=');delay(100);
       gotoxy(15,5);write('=');delay(100);
       gotoxy(16,5);write('=');delay(100);
       gotoxy(17,5);write('=');delay(100);
       gotoxy(18,5);write('=');delay(100);
       gotoxy(19,5);write('=');delay(100);
       gotoxy(20,5);write('=');delay(100);
       gotoxy(21,5);write('=');delay(100);
       gotoxy(22,5);write('=');delay(100);
end;

Procedure kedua,

Ini mempunya perintah yang sama dengan procedure sebelumnya hanya saja dimunculkan di titik yang berbeda. 

procedure dua;
begin
textcolor(white);
       gotoxy(5,7);write('=');delay(100);
       gotoxy(6,7);write('=');delay(100);
       gotoxy(7,7);write('=');delay(100);
       gotoxy(8,7);write('=');delay(100);
       gotoxy(9,7);write('=');delay(100);
       gotoxy(10,7);write('=');delay(100);
       gotoxy(11,7);write('=');delay(100);
       gotoxy(12,7);write('=');delay(100);
       gotoxy(13,7);write('=');delay(100);
       gotoxy(14,7);write('=');delay(100);
       gotoxy(15,7);write('=');delay(100);
       gotoxy(16,7);write('=');delay(100);
       gotoxy(17,7);write('=');delay(100);
       gotoxy(18,7);write('=');delay(100);
       gotoxy(19,7);write('=');delay(100);
       gotoxy(20,7);write('=');delay(100);
       gotoxy(21,7);write('=');delay(100);
       gotoxy(22,7);write('=');delay(100);
end;

Procedure ketiga,

Ini digunakan untuk memunculkan kata 'kalkulator' dimana setiap huruf ditampilkan secara bergantian.

procedure tiga;
begin
textcolor(white);
     gotoxy(9,6);write('K');delay(100);
     gotoxy(10,6);write('a');delay(100);
     gotoxy(11,6);write('l');delay(100);
     gotoxy(12,6);write('k');delay(100);
     gotoxy(13,6);write('u');delay(100);
     gotoxy(14,6);write('l');delay(100);
     gotoxy(15,6);write('a');delay(100);
     gotoxy(16,6);write('t');delay(100);
     gotoxy(17,6);write('o');delay(100);
     gotoxy(18,6);write('r');delay(100);
end;

Procedure keempat,

Ini berisi kode yang digunakan untuk menampilkan simbol yang akan digunakan untuk melakukan operasi penjumlahan dan perkalian, yaitu '+', '*', dan '='. Sehingga nantinya user hanya menginputkan angkanya saja yang akan diproses.

procedure papat;
begin
textcolor(white);
     gotoxy(11,8);write('+');delay(100);
     gotoxy(17,8);write('=');delay(100);
     gotoxy(11,9);write('*');delay(100);
     gotoxy(17,9);write('=');
end;

Procedure kelima,

Ini berisi kode yang digunakan untuk menampilkan tanda '=' dan kata 'jumlah' dibawahnya yang nantinya akan digunakan untuk menampung hasil penjumlahan dari hasil jumlah dan kali pada operasi sebelumnya.

procedure lima;
begin
textcolor(white);
       gotoxy(5,10);write('=');delay(100);
       gotoxy(6,10);write('=');delay(100);
       gotoxy(7,10);write('=');delay(100);
       gotoxy(8,10);write('=');delay(100);
       gotoxy(9,10);write('=');delay(100);
       gotoxy(10,10);write('=');delay(100);
       gotoxy(11,10);write('=');delay(100);
       gotoxy(12,10);write('=');delay(100);
       gotoxy(13,10);write('=');delay(100);
       gotoxy(14,10);write('=');delay(100);
       gotoxy(15,10);write('=');delay(100);
       gotoxy(16,10);write('=');delay(100);
       gotoxy(17,10);write('=');delay(100);
       gotoxy(18,10);write('=');delay(100);
       gotoxy(19,10);write('=');delay(100);
       gotoxy(20,10);write('=');delay(100);
       gotoxy(21,10);write('=');delay(100);
       gotoxy(22,10);write('=');delay(100);
       gotoxy(9,11);write('J');delay(100);
       gotoxy(10,11);write('u');delay(100);
       gotoxy(11,11);write('m');delay(100);
       gotoxy(12,11);write('l');delay(100);
       gotoxy(13,11);write('a');delay(100);
       gotoxy(14,11);write('h');delay(100);
       gotoxy(16,11);write('= ');delay(100);
end;

Procedure keenam,

Ini berisi kode yang digunakan untuk memproses angka yang diinputkan.

procedure enam;
begin
textcolor(white);
     gotoxy(7,8);readln(a);
     gotoxy(13,8);readln(b); c:=a+b;
     gotoxy(19,8);textcolor(red);write('?');
     delay(2000);
     gotoxy(19,8);textcolor(red);write(c);
     textcolor(white);
     gotoxy(7,9);readln(d);
     gotoxy(13,9);readln(e);f:=d*e;
     gotoxy(19,9);textcolor(red);write('?');
     delay(3000);
     gotoxy(19,9);textcolor(red);write(f);g:=c+f;
     gotoxy(18,11);textcolor(green);write('?');
     delay(4000);
     gotoxy(18,11);textcolor(green);write(g);
end;

Proses pemanggilan,

Pada langkah terakhir, kita tinggal memanggil perintah-perintah apa yang sudah kita buat tadi sehingga kalkulator dapat digunakan.

begin
     clrscr;
     satu;tiga;dua;
     papat;lima;enam;
     readln;
end.

 

Penjelasan:

Procedure enam,

gotoxy(19,8);textcolor(red);write('?');
delay(2000);
gotoxy(19,8);textcolor(red);write(c);
textcolor(white);

Pada bagian ini tanda ? akan muncul setelah menginputkan angka yang akan diproses sehingga membuat komputer seolah-olah berpikir terlebih dahulu sebelum menampilkan hasil sebenarnya. Ini ditangani oleh perintah delay. Setelah waktu delay habis maka tanda ? akan direplace dengan hasil yang ditulis dengan perintah gotoxy dimana titik koordinat berada pada tempat yang sama pada kemunculan tanda ?.

 

Terima kasih, selamat mengembangakan,  sampai jumpa di tutorial selanjutnya...


About Author

Arif Hidayanto


Comment & Discussions

    Please LOGIN before if you want to give the comment.