Seperti pada judul di atas, kali ini kita akan belajar membuat subprogram atau program-program kecil di dalam proyek program kita.
Bingung?
Sebagai contoh kali ini saya akan membuat program/aplikasi untuk menghitung 3 jenis bangun datar, yaitu Persegi, Segi Tiga dan Lingkaran, dalam 1 buah aplikasi saja.
Sebenarnya ada banyak cara untuk membuat aplikasi seperti ini, bisa menggunakan Decision Conditional (percabangan) yang kemain, menggunakan Label yang akan kita bahas kali ini dan menggunakan Fungsi/Procedure (ini akan di bahas di artikel selanjutnya :D )
Penasaran gimana cara bikin nya? yuk langsung aja .. :D
A. Design Program
Yang pertama adalah perancangan design aplikasi yang akan kita buat.
Kali ini saya akan membuat aplikasi dengan 5 sub program, yaitu :
- Menu
- Menghitung Luas Persegi
- Menghitung Luas Segi Tiga
- Menghitung Luas Lingkaran
- Keluar
B. Membuat Program/Aplikasi Bagian - perbagian
Sebenarnya tidak ada cara/terori baku dalam membuat suatu program yang mempunyai banyak subprogram. kita bisa saja langsung menulis seluruh code sub program berbarengan atau memisah nya / mengerjakanya 1 per satu. menurut saya agar tidak bingung dan mudah dipelajari juga lebih baik kita membuatnya secara terpisah terlebih dahulu.
sebagai contoh
Saya akan membuat tampilan untuk menu terlebih dahulu
Berikut ini potokan sub program untuk Menu :
Begin Writeln('Menu Menghitung Luas'); Writeln('1. Luas Persegi'); Writeln('2. Luas Segi Tiga'); Writeln('3. Luas Lingkaran'); Writeln('4. Keluar'); Write('Masukkan Pilihan Menu [1-4] : ');readln(s); Writeln(); Case (s) of 1: // run sub program Luas Persegi 2: // run sub program Segi Tiga 3: // run sub program Lingkaran 4: // keluar end; End;Kemudian membuat program untuk menghitung luas :
a. Persegi
Begin Writeln('Menghitung Luas Persegi'); Write('Masukkan Panjang : ');read(p); Write('Masukkan Lebar : ');read(l); luasP := p * l; Write('Luas Persegi Panjang : ',luasP); Writeln(); Writeln(); // kembali ke menu End;b. Segi Tiga
Begin Writeln('Menghitung Luas Segi Tiga'); Write('Masukkan Alas : ');read(a); Write('Masukkan Tinggi : ');read(t); luasS := 0.5 * a * t; Write('Luas Segitiga : ',luasS:3:2); Writeln(); Writeln(); //kembali ke menu End;c. Lingkaran
Begin Writeln('Menghitung Luas Lingkaran'); Write('Masukkan Jari-jari : ');read(r); luasL := Phi * r * r; Write('Luas Lingkaran : ',luasL:3:2); Writeln(); Writeln(); // kembali ke menu End;Untuk menu keluar nantinya program cukup kita arahkan ke akhir baris (end)
C. Kemudian menggabungkannya dengan menggunakan LABEL
Penulisan GOTO-LABEL
Label <label name> goto <label name>; ... ... <label name>: statement;Label berfungsi sebagai penanda dimana dimulainya sub program yang kita buat, penamaan label boleh dnegan angka/huruf asalkan tidak mengandung spasi.
Fungsi GOTO adalah mengarahkan alur program ke tujuan (dalam hal ini label yang sesuai dengan namanya)
Kemudian kita satukan dan sesuaikan program-program yang kita buat menjadi
Program contohLabel; Uses crt; Label menu,luasPersegi,luasSegiTiga,luasLingkaran,keluar; Const Phi = 3.14; var s : integer; p,l,luasP : integer; a,t,luasS : real; r,luasL : real; Begin clrscr; goto menu; menu: Begin Writeln('Menu Menghitung Luas'); Writeln('1. Luas Persegi'); Writeln('2. Luas Segi Tiga'); Writeln('3. Luas Lingkaran'); Writeln('4. Keluar'); Write('Masukkan Pilihan Menu [1-4] : ');readln(s); Writeln(); Case (s) of 1: goto luasPersegi; 2: goto luasSegiTiga; 3: goto luasLingkaran; 4: goto keluar; end; End; luasPersegi: Begin Writeln('Menghitung Luas Persegi'); Write('Masukkan Panjang : ');read(p); Write('Masukkan Lebar : ');read(l); luasP := p * l; Write('Luas Persegi Panjang : ',luasP); Writeln(); Writeln(); goto menu; End; luasSegiTiga: Begin Writeln('Menghitung Luas Segi Tiga'); Write('Masukkan Alas : ');read(a); Write('Masukkan Tinggi : ');read(t); luasS := 0.5 * a * t; Write('Luas Segitiga : ',luasS:3:2); Writeln(); Writeln(); goto menu; End; luasLingkaran: Begin Writeln('Menghitung Luas Lingkaran'); Write('Masukkan Jari-jari : ');read(r); luasL := Phi * r * r; Write('Luas Lingkaran : ',luasL:3:2); Writeln(); Writeln(); goto menu; End; keluar: End.Dan hasilnya adalah :
Menu Menghitung Luas 1. Luas Persegi 2. Luas Segi Tiga 3. Luas Lingkaran 4. Keluar Masukkan Pilihan Menu [1-4] : 1 Menghitung Luas Persegi Masukkan Panjang : 10 Masukkan Lebar : 20 Luas Persegi Panjang : 200 Menu Menghitung Luas 1. Luas Persegi 2. Luas Segi Tiga 3. Luas Lingkaran 4. Keluar Masukkan Pilihan Menu [1-4] : 2 Menghitung Luas Segi Tiga Masukkan Alas : 30 Masukkan Tinggi : 10 Luas Segitiga : 150.00 Menu Menghitung Luas 1. Luas Persegi 2. Luas Segi Tiga 3. Luas Lingkaran 4. Keluar Masukkan Pilihan Menu [1-4] : 3 Menghitung Luas Lingkaran Masukkan Jari-jari : 7 Luas Lingkaran : 153.86 Menu Menghitung Luas 1. Luas Persegi 2. Luas Segi Tiga 3. Luas Lingkaran 4. Keluar Masukkan Pilihan Menu [1-4] : 4
DONE!!! Hore... kita sekarang sudah bisa membuat prtogram yang lumayan kompleks :D dari yang kita pelajari kali ini bisa kita kembangkan menjadi aplikasi profesional yang bermacam-macam,, keren.. hehehe
Cukup sekin dulu pembahasan kita kali ini, semoga bermanfaat dan see you on the next article :D
Saya mau tanya itu bahasa C,C# atau C++ ya makasih atas pemberitahuan nya
BalasHapusItu bahasa pascal
HapusTerima kasih gan atas ilmunya! Saya sudah terapkan pada program kecil2an saya .
BalasHapusGan kok selalu eror di cese (s) of nya..?
BalasHapus