uses wincrt;
const
pi = 3.14 ;
var
panjang,lebar, tinggi,sisi, jarijari,
luasbalok, luaskubus,volumebalok,volumekubus,
volumekerucut : real ;
massa, mol, molar, ar,kalor,volume,T1,T2,molal,kalorjenis : real ;
hambatan, arus,energilistrik, dayalistrik,
tekanan, tegangan, kecepatan,
energi, luas, percepatan, gaya, momentum,
daya, jarak,waktu : real;
pilihanrumus, pilihan : char;
coba, nama, start :string[15];
nim : integer;
label
ulang, akhir ;
begin
writeln(‘ * registrasi * ‘);
writeln(‘====================’);
write(‘nama : ‘);
readln(nama);
write(‘nim : ‘);
readln(nim);
write(‘press “enter” to start !’);
readln(start);
ulang :
clrscr;
writeln(‘__________________________’);
writeln(‘ Koleksi Kumpulan Rumus ‘);
writeln(‘ created by Ahmad Shidiqi’);
writeln(‘ ======================= ‘);
writeln(‘ Daftar Rumus ‘);
writeln(‘ 1) fisika ‘);
writeln(‘ 2) matematika ‘);
writeln(‘ 3) kimia ‘);
writeln(‘ which one do you want ? ‘);
writeln(‘ masukan pilihan : ‘);
writeln(‘__________________________’);
readln(pilihanrumus);
case pilihanrumus of
‘1’ :
begin
clrscr;
writeln(‘_______________________________’);
writeln(‘* rumus – rumus fisika *’);
writeln(‘* ==================== *’);
writeln(‘* pilihan rumus : *’);
writeln(‘* a) kecepatan *’);
writeln(‘* b) percepatan *’);
writeln(‘* c) gaya *’);
writeln(‘* d) energi listrik *’);
writeln(‘* e) daya listrik *’);
writeln(‘* f) tekanan *’);
writeln(‘* g) hambatan *’);
writeln(‘* mau yang mana ? *’);
writeln(‘* silahkan masukan pilihan !! *’);
writeln(‘_______________________________’);
readln(pilihanrumus);
case pilihanrumus of
‘a':
begin
write(‘masukan jarak = ‘);
readln(jarak);
write(‘masukan waktu = ‘);
readln(waktu);
kecepatan:=jarak/waktu;
writeln(‘kecepatan = ‘,kecepatan:4:2, ‘ m/s’ );
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘b’ :
begin
write(‘masukan kecepatan = ‘);
readln(kecepatan);
write(‘masukan waktu = ‘);
readln(waktu);
percepatan:=kecepatan/waktu;
writeln(‘percepatan = ‘,percepatan:4:2,’ m/s2′);
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘c’ :
begin
write(‘masukan massa = ‘);
readln(massa);
write(‘masukan percepatan = ‘);
readln(percepatan);
gaya:=massa*percepatan;
writeln(‘gaya = ‘,gaya:4:2,’ N’);
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘d’ :
begin
write(‘masukan tegangan = ‘);
readln(tegangan);
write(‘masukan arus = ‘);
readln(arus);
write(‘masukan waktu = ‘);
readln(waktu);
energilistrik:=tegangan*arus*waktu;
writeln(‘energi listrik = ‘,energilistrik:4:2,’ joule’);
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘e’ :
begin
write(‘masukan tegangan = ‘);
readln(tegangan);
write(‘masukan arus = ‘);
readln(arus);
dayalistrik:=tegangan*arus;
writeln(‘daya listrik = ‘,dayalistrik:4:2,’ watt’);
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘f’ :
begin
write(‘masukan gaya = ‘);
readln(gaya);
write(‘masukan luas permukaan = ‘);
readln(luas);
tekanan:=gaya*luas;
writeln(‘tekanan = ‘,tekanan:4:2,’ pascal’);
writeln(‘benar bukan ? ^_^’);
readln;
end;
‘g':
begin
write(‘masukan arus = ‘);
readln(arus);
write(‘masukan tegangan = ‘);
readln(tegangan);
hambatan:=tegangan/arus;
writeln(‘hambatan = ‘,hambatan:4:2,’ ohm’);
writeln(‘benar bukan ? ^_^’);
readln;
end;
else
writeln(‘sorry..incorrect action !!!!’);
writeln(‘——————————————————–‘);
end;
writeln(‘ingin coba lagi(ya/tidak) ? :’);
readln(coba);
if coba =’ya’ then goto ulang
else
goto akhir;
end;
‘2’ :
begin
clrscr;
writeln(‘______________________________’);
writeln(‘* rumus – rumus matematika *’);
writeln(‘* ========================== *’);
writeln(‘* a) luas permukaan kubus *’);
writeln(‘* b) luas permukaan balok *’);
writeln(‘* c) volume balok *’);
writeln(‘* d) volume kubus *’);
writeln(‘* e) volume kerucut *’);
writeln(‘* mau pilih yang mana ??? *’);
writeln(‘* silahkan masukan pilihan : ‘);
writeln(‘______________________________’);
readln(pilihanrumus);
case pilihanrumus of
‘a’ :
begin
write(‘masukan sisi = ‘);
readln(sisi);
luaskubus:=6*sisi*sisi ;
writeln(‘luas permukaan kubus = ‘,luaskubus:4:1);
readln;
end;
‘b’ :
begin
write(‘masukan panjang = ‘);
read(panjang);
write(‘masukan lebar = ‘);
read(lebar);
write(‘masukan tinggi = ‘);
read(tinggi);
luasbalok:=2*(panjang*lebar)+2*(panjang*tinggi)+2*(lebar*tinggi) ;
writeln(‘luas permukaan balok = ‘,luasbalok:4:1);
readln;
end;
‘c’ :
begin
write(‘masukan panjang = ‘);
readln(panjang);
write(‘masukan lebar = ‘);
readln(lebar);
write(‘masukan tinggi = ‘);
readln(tinggi);
volumebalok:=panjang*lebar*tinggi ;
writeln(‘volume balok = ‘,volumebalok:4:1);
readln;
end;
‘d’ :
begin
write(‘masukan sisi = ‘);
readln(sisi);
volumekubus:=sisi*sisi*sisi ;
writeln(‘volume kubus = ‘,volumekubus:4:1);
readln;
end;
‘e’ :
begin
write(‘masukan jari-jari = ‘);
readln(jarijari);
write(‘masukan tinggi = ‘);
readln(tinggi);
volumekerucut:=pi*sqr(jarijari)*tinggi ;
writeln(‘volume kerucut = ‘,volumekerucut:4:1);
readln;
end;
else
writeln(‘sorry… incorrect action !!!’);
end;
writeln(‘ingin coba lagi(ya/tidak) ? :’);
readln(coba);
if coba =’ya’ then goto ulang else goto akhir;
end;
‘3’:
begin
clrscr;
writeln(‘_____________________________’);
writeln(‘* pilihan rumus *’);
writeln(‘* ============= *’);
writeln(‘* a) mol zat *’);
writeln(‘* b) molar *’);
writeln(‘* c) molal *’);
writeln(‘* d) kalor *’);
writeln(‘mau pilih yang mana ? *’);
writeln(‘silahkan masukan pilihan !! *’);
writeln(‘_____________________________’);
readln(pilihanrumus);
case pilihanrumus of
‘a’ :
begin
write(‘masukkan massa = ‘);
readln(massa);
write(‘masukan nilai atom relatif = ‘);
readln(ar);
mol:=massa/ar ;
writeln(‘mol zat = ‘,mol:4:1,’mol’);
writeln(‘is it right ?’);
readln;
end;
‘b’ :
begin
write(‘masukan mol zat = ‘);
readln(mol);
write(‘masukan volume = ‘);
readln(volume);
molar:=mol/volume ;
writeln(‘molar zat = ‘,molar:4:1,’mol/L’);
writeln(‘is it right ? ‘);
readln;
end;
‘c’ :
begin
write(‘masukan mol zat = ‘);
readln(mol);
write(‘masukan massa air(kg) = ‘);
readln(massa);
molal:=mol/massa ;
writeln(‘molal zat = ‘,molal:4:1,’mol/kg’);
writeln(‘is it right ?’);
readln;
end;
‘d':
begin
write(‘masukan massa = ‘);
readln(massa);
write(‘masukan kalor jenis = ‘);
readln(kalorjenis);
write(‘masukan suhu awal = ‘);
readln(T1);
write(‘masukan suhu akhir = ‘);
readln(T2);
kalor:=massa*kalorjenis*(T2-T1) ;
writeln(‘kalor zat = ‘,kalor:4:1,’joule’);
writeln(‘is it right ? ‘);
readln;
end ;
else
writeln(‘ sorry.. incorrect action ‘);
end;
writeln(‘ingin coba lagi(ya/tidak) ? :’);
readln(coba);
if coba =’ya’ then goto ulang else
goto akhir;
end;
else
writeln(‘sorry.. the case that you chosed has not registrated !!!’);
writeln(‘——————————————————–‘);
writeln(‘silahkan coba lagi !!!!’);
writeln(‘ingin coba lagi(ya/tidak) ? :’);
readln(coba);
if coba =’ya’ then goto ulang else
goto akhir;
end;
akhir :
clrscr;
writeln(‘*********************selesai*********************’);
writeln(‘## Terima kasih anda telah mencoba program ini ##’);
writeln(‘ untuk kritik dan saran silahkan kirim e-mail ke ‘);
writeln(‘__________ rizalmuhammad093@gmail.com ___________’);
end.
Struktur Program Pascal
Judul Program (Program Heading)
Judul program ini sifatnya adalah opsional artinya boleh digunakan boleh tidak, jadi program anda tidak akan bermasalah sekalipun anda tidak menggunakan judul program (Program Heading), hanya saja saran saya lebih baik anda menggunakannya untuk mengidentifikasi bagian dari program anda (sebagai pengenal)Blok Program (Program Blok) atau Badan Program (Program Body)
Blok Program atau Badan Program
terdiri dari:
a.
Bagian
Deklarasi (Declaration Part) : untuk menyiapkan elemen-elemen program
b.
Bagian
Pernyataan (Statement Part) : Untuk menunjukan suatu tindakan yang akan
dijadikan oleh program, dimana Statement Part ini di awali dengan Begin dan
diakhiri dengan End. Atau kalau anda sudah pernah menggunakan PHP, bagian ini
adalah <?php dan ?> pada phpnya.
Untuk Lebih Jelasnya perhatikan Gambar
1.1 Dibawah ini :
Pola Susunan Program
PROGRAM nama_program(INPUT,OUTPUT) ;
USES ……, ……, ……, ……. ;
LABEL …………
CONST ……..
= …….. ;
TYPE ……..
= …….. ;
VAR ……..
: …….. ;
PROCEDURE nama_prosedur ;
BEGIN
Pernyataan ;
END;
FUNCTION nama_fungsi ;
BEGIN
Pernyataan ;
END;
BEGIN (* Program Utama *)
Pernyataan ;
END.
Kepala Program
Digunakan untuk mencantumkan nama
program, sifat judul program ini adalah optional atau sebagai dokumentasi saja
dan tidak akan mempengaruhi proses dalam suatu program. Dalam penulisannya,
judul program harus diawali dengan kata Program dan diikuti dengan judul dari
program serta diakhiri dengan titik koma (;)
Seperti yang saya terangkan diatas,
walaupun sifat judul ini opsional tapi dianjurkan untuk menggunakannya karna
bagian ini menyiratkan isi program
Contoh penulisan :
Kaidahnya : Program Nama_Program (Keterangan);
Contoh :
Program Input_Data; Program Inventory (input,output);
Bagian Deklarasi
Digunakan bila program menggunakan
identifier (pengenal), seperti variable, konstanta, label, tipe, prosedur,
fungsi dan penggunaan unit.
a. Deklarasi Label
Label
digunakan sebagai arah tujuan dari dari perintah Goto, label tersebut harus
dideklarasikan terlebih dahulu pada bagian deklarasi. Nama label ini boleh
berupa string (contoh : Selesai) dan boleh juga suatu nilai integar (contoh :
1000).
Goto
adalah perintah untuk meloncat ke suatu statement tertentu, perintah Goto harus
diikuti oleh nama label yang dituju, atau seperti link pada html.
Perhatikan
contoh berikut :
Program
Contoh_Label(Layar) ;
Uses
wincrt;
Label
100,
Selesai ;
Begin
Writeln
( ‘ Bahasa ‘ ) ;
Goto
100 ;
Writeln
( ‘ Pemrograman ‘ ) ;
100 :
Writeln
( ‘ Tingkat ‘ ) ;
Goto
Selesai ;
Writeln
( ‘ Tinggi ‘ ) ;
Selesai
:
End.
b. Deklarasi Konstanta
Konstanta
adalah suatu Nilai/data yang bersifat tetap (tidak bisa berubah) yang disimpan
di dalam memori dan dapat diambil nilainya/datanya bila dipanggil. Konstanta
sering digunakan dalam rumus rumus fisika dan matematika.
c. Deklarasi Variabel
Variabel
adalah suatu tempat didalam memori computer yang dapat menyimpan nilai/data
yang dapat berubah ubah.
Variabel
bersifat sementara, sehingga bila computer dishut down semua variable secara
otomatis akan hilang, variable hanya digunakan saat program sedang berjalan.
Perhatikan
Contoh dibawah ini :
Program
Contoh_Variabel ;
Uses
wincrt;
Var
Nama : String [25] ;
Nilai_Akhir : Integer ;
Nilai_Rata2
: Real ;
Grade : Char ;
Keterangan:
String [5];
Begin
Nama
:= ‘Irfan Maulana’ ;
Nilai_Akhir
:= 87 ;
Nilai_Rata2:=
87.25 ;
Grade:=
‘A’ ;
Keterangan:=
‘Lulus’ ;
Writeln
( ‘Nama Mahasiswa ‘, Nama ) ;
Writeln
( ‘Nilai Akhir ‘, Nilai_Akhir ) ;
Writeln
( ‘Nilai Rata-rata adalah ‘, Nilai_Rata2 ) ;
Writeln
( ‘Gradenya adalah ‘, Grade ) ;
Writeln
( ‘Keterangannya adalah ‘, Keterangan ) ;
End.
d. Deklarasi Type
Adalah
pengenal atau identifier dari data yang digunakan, setiap data harus dikenalkan
typenya. Jika anda ingin menggunakan tipe data dengan nama yang dibuat pemakai
maka harus disebutkan tipe standarnya .
Perhatikan
contoh dibawah ini :
Program
Contoh_Tipe ;
Uses
wincrt;
Type
Bil_Bulat
= Integer ;
Var
Jumlah
: Bil_Bulat ;
Begin
Jumlah
:= 10 ;
Writeln
( ‘ Jumlah : ‘, Jumlah ) ;
End.
e. Deklarasi Prosedur dan fungsi
Deklarasi
prosedur dan fungsi digunakan apabila program memiliki subprogram (bagian
bagain dari program) yang diletakan terpisah dalam blok sendiri
f. Deklarasi Unit
Unit
adalah tempat berkumpulnya bermacam-macam perintah dalam pascal. Untuk
mengaktifkan unit digunakan perintah Uses, yang terdiri dari
1.
Unit
System
Merupakan
unit standar yang berisi pustaka (library) dari Runtime Turbo Pascal yang
mendukung semua proses yang dibutuhkan saat pengerjaan program. Unit ini secara
otomatis digunakan dan tidak perlu disebutkan lagi.
2.
Unit
CRT (Catoda Ray Tube)
Unit
ini digunakan untuk memanipulasi layar teks seperti peletakan kursor dilayar,
color untuk teks dan backcolor, pembuatan window.
Perhatikan
contoh dibawah ini :
Program
Hapus_Layar ;
Uses
CRT ;
Begin
Clrscr
;
Writeln
( ‘ Bahasa ‘ ) ;
Writeln
( ‘ Pascal ‘ ) ;
End.
Clrscr
merupakan kependekan dari Clear Screen yaitu perintah untuk membersihkan
tampilan teks di layar dan meletakan kursor di pojok kiri atas layar.
3.
Unit
Printer
Unit
ini digunakan saat ingin menggunakan printer di program
Perhatikan
contoh dibawah ini :
Program
Contoh_Print;
Uses
Printer ;
Begin
Writeln
( Lst, ‘Bahasa ‘ ) ;
Writeln
( Lst, ‘Pascal ‘ ) ;
End.
4.
Unit DOS (Disk Operating System)
Unit standar ini digunakan bila menggunakan
prosedur-prosedur dan fungsi-fungsi standar yang berhubungan dengan DOS,
Seperti : Gettime, SetTime, DiskSize, dll.
Perhatikan contoh dibawah ini:
Program
Sisa_Isi_Disk ;
Uses
DOS ;
Begin
Writeln
( DiskFree(0), ‘byte isi disk’ ) ;
End.
5.
Unit
Graph
Unit
ini digunakan untuk keperluan pembuatan grafik.
6.
Unit
Graph3
Unit
ini digunakan untuk membuat grafik yang ditulis dengan Turbo Pascal Versi3 menjadi
kompatibel dan dapat dijalankan di Turbo Pascal versi 5.0.
7.
Unit
Turbo3
Unit
ini berisi dua buah variable standar dan beberapa prosedur yang ada di versi
3.0 tetapi tidak lagi digunakan di versi 4.0 dan versi 5.0
8.
Unit
Overlay
Unit ini
digunakan untuk mendukung pembuatan overlay. Overlay adalah bagian bagian dari
program yang menggunakan area memori yang sama.
Perintah Dasar Pada Program Pascal
Write : perintah untuk mencetak
tulisan/teks dimonitor atau di printer
Writeln : perintah untuk mencetak teks
diikuti perpindahan kursor kebaris berikutnya. Ln sendiri adalah kependekan
dari Line New atau seperti tag <br> pada HTML.
Perhatikan 2 contoh dibawah ini :
Contoh 1 :
Begin
Write ( ‘ Bahasa ‘ ) ;
Write ( ‘ Pemrograman ‘ ) ;
Write ( ‘ Pascal ‘ ) ;
End.
Contoh 2:
Begin
Writeln ( ‘ Bahasa ‘ ) ;
Writeln ( ‘ Pemrograman ‘ ) ;
Writeln ( ‘ Pascal ‘ ) ;
End.
Perhatikan contoh dibawah ini :
Begin
Writeln ( Lst, ‘ Bahasa ‘ ) ;
Writeln ( Lst, ‘ Pascal ‘ );
End.
Komentar Program
Komentar
program adalah keterangan yang diberikan untuk keperluan dokumentasi. Komentar
tidak akan menghasilkan tindakan(tidak mempengaruhi proses jalannya program).
Cara penulisan :
Boleh
menggunakan tanda : {ini adalah cara menuliskan komentar dalam pascal}
Dan
boleh juga seperti ini : (*Ini adalah cara menuliskan komentar dalam pascal*)
Perhatikan
contoh dibawah ini :
{ Ini awal Program }
Begin
Writeln ( ‘ Bahasa ‘ )
;
Writeln ( ‘ Pascal ‘ )
;
End.
(* Akhir Program *)

Tidak ada komentar:
Posting Komentar