Pascal

PASCAL

Mengenal Komponen-komponen Bahasa Pemrograman Pascal

Berikut ini adalah struktur umum dari komponen-komponen program Pascal.
Judul Program
Bagian Utama Program
program ...; { judul program }

uses ...; { deklarasi uses }
label ...; { deklarasi label }
const ...; { deklarasi konstanta }
type ...; { deklarasi tipe }
var ...; { deklarasi variabel }
procedure ...; { deklarasi prosedur }
function ...; { deklarasi fungsi }

begin
statement; { pernyataan }
end.

@ Judul program (programe heading) menentukan nama program dan parameter tetapi tidak harus mempunyai makna terhadap program itu sendiri.
@ Deklarasi uses menggambarkan unit yang digunakan oleh program.
Bagian Deklarasi label, constant, variable, procedure, dan functione dapat didaftar secara berturut dan diulang beberapa kali.
@ Bagian Pernyataan menentukan pernyataan untuk dieksekusi ketika program dijalankan.


Mengoperasikan Perintah-Perintah Dasar
Untuk Membuat Program Sederhana

Sebelum membuat program Pascal sederhana, sebaiknya memahami terlebih dahulu pernyataan-pernyataan yang memberi peran besar dalam membuat program Pascal.
Pernyataan tersebut termasuk :
1. Pernyataan keluaran ke monitor melalui pernyataan Write dan Writeln.
2. Pernyataan masukan dari keyboard melalui pernyataan Read dan Readln.

Ø Pernyataan WRITE
Dapat digunakan untuk mencetak beberapa buah item ke moniter computer dengan berurutan dan secara otomatis Pascal menempatkan kursor ke sebelah kananitem terakhir.
Rumus umumnya adalah : Write(item1, item2, item3, ....)
Item berupa nilai angka, karakter, string, nilai boolean, variabel, dan ekspresi.
Contoh :

PROGRAM Menggunakan_Write; {judul program}

USES {deklarasi uses}
Wincrt;
VAR {bagian deklarasi variabel}
Angka1 : real;
BEGIN {awal bagian utama program}
Write(‘Ketik satu angka’);
Write(‘Ketiklah angka =’,Angka1:10:0);
Write(‘Kalikan dua, maka’,2*angka1:10:0);
END. {akhir bagian utama program}

Ø Pernyataan WRITELN
Perbedaan antara WRITE dan WRITELN adalah setelah menuliskan item-item, Pascal memindahkan kursor turun satu baris ke baris berikutnya.
Rumus umumnya adalah : Writeln(item1, item2, irwm3, ....)
Contoh :

PROGRAM Identitas_Diri; {judul program}
USES WINCRT;
BEGIN {awal bagian utama program}
Writeln(‘Namaku Wijaya’);
Writeln(‘Alamatku di Surakarta’);
Writeln(‘Tempat lahir di Jatingaleh, Semarang’);
Writeln(‘Ulang tahunku 18 Mei setiap tahun’);
Writeln(‘Makanan favoritku bakso ikan’);
Writeln(‘Pelajaran favoritku Fisika dan Komputer’);
Writeln(‘Tinggi badanku 170 cm’);
Writeln(‘Berat badanku 50 kg’);
Writeln(‘Udah dulu ya ?’);
END. {akhir bagian utama program}

Perhatikan :
Pada awal program, kita harus menuliskan PROGRAM diikuti judul program yaitu Identitas_Diri. Pada penulisan judul program tidak boleh menggunakan spasi dan hanya boleh menggunakan underscore ( _ ) untuk menyambung kata demi kata.
Pada bagian utama program diawali dengan BEGIN dan diakhiri dengan END. Tanda titik ( . ) di sebelah kanan END harus dieberikan.
Pernyataan di dalam kurung, dipisahkan oleh tanda titik-koma (;) dan ditulis dengan sistem bertakik (indentation). Tujuannya untuk memudahkan membaca program.
Pernyataan Writeln digunakan untuk mencetak pernyataan yang ada di dalam tanda kurung dan memerintahkan kursor untuk pindah ke bawah. Ingat, pernyataan di dalam kurung harus diberi tanda apostrof (‘) di awal dan di akhirnya.

Setiap baris program yang diketik pada editor Pascal memiliki maksud tertentu. Agar program yang dibuat dapat dipahami orang lain, tulislah komentar. Sejumlah kometar yang ditulis harus berada di dalam kurung kurawal yaitu diawali oleh { atau (* dan diakhiri dengan *)

Ø Pernyataan READ
Pernyataan Read digunakan untuk menyatakan nilai satu atau beberapa variabel. Rumus umumnya adalah READ(variabel1, variabel2,..._ Pernyataan ini mengharuskan pemakai memasukkan jawaban melalui keyboard dan mengakhiri jawaban dengan menekan tombol enter. Perhatikan contoh Program berikut :


Program Pernyatan_Masukan; {Judul Program}

USES {Deklarasi uses}
Wincrt;

Var {bagian deklarasi variabel}
Angka1,Angka2 : Real;

Begin {awal bagian utama program}
Write('Ketik dua angka ');
Read(angka1,angka2);
Writeln('Yang anda ketik adalah angka ',angka1:3:0
, ' dan angka ',angka2:3:0);
Writeln('Tull nggak ?');
End. {akhir bagian utama program}

Ø Pernyataan READLN
Pernyataan Readln hampir sama dengan pernyataan Read. Pernyataan Readln memindahkan kursor turun satu baris ke baris berikutnya setelah diketikkkan nilai variabel yang ditanyakan oleg Pascal. Rumus umumnya : Readln(variabel1,variabel2, ...)
Contoh :

Program Pernyatan_Masukan; {Judul Program}

USES Wincrt;
Var Angka1,Sudut1 : Real;
Begin {awal bagian utama program}
Write('Ketiklah sembarang angka ');
Writeln(' ');
Readln(angka1);
Writeln('Yang anda ketik adalah angka = ',angka1:5:0);
Writeln('Dikuadratkan menjadi = ',sqr(angka1):5:0);
Writeln(' ');
Write('Sekarang ketiklah sembarang sudut ');
Readln(sudut1);
Writeln(' ');
Writeln('Yang anda ketik adalah sudut = ',sudut1:5:0);
Writeln('Sinus sudut',sudut1:5:0,' adalah ',sin(sudut1/(180/pi)):0:2);
Writeln('Cosinus sudut',sudut1:5:0,' adalah ',cos(sudut1/(180/pi)):0:2);
Writeln('Tull nggak ?');
End. {akhir bagian utama program}
Mengenal Tipe Data dan Operator

Pascal mengenal tipe data Integer, Boolean, Char, Real, dan String. Tipe data interger, Boolean, dan Char termasuk data ordinal karena data ini memiliki nilai-nilai dengan urutan tertentu.
Tipe
Jangkauan Nilai
Ukuran Memory
Byte
0 – 255
1 byte
Word
0 – 65535
2 byte
Shortint
-128 s.d. 127
1 byte
Smallint
-32768 s.d. 32767
2 byte
Interger
-2147483648 s.d. 2147483647
4 byte
Cardinal
0 s.d. 2147483647
4 byte
Longint
-2147483648 s.d. 2147483647
4 byte

Boolean, merupakan tipe data yang hanya memiliki dua nilai, yaitu TRUE dan FALSE.
Tipe
Jangkauan Nilai
Ukuran Memory
Boolean
Berukuran byte
1 byte
Bytebool
Berukuran byte
1 byte
Bool
Berukuran word
2 byte
Wordbool
Berukuran word
2 byte
Longbool
Berukuran double
4 byte
Char atau Karakter, merupakan tipe data yang berhubungan dengan karakter (huruf, angka, symbol yang memiliki kode ASCII 0 sampai 255.
Karakter dapat ditulis seperti biasa tetapi harus diapit oleh apostrof (‘) atau dalam bentuk kode ASCII tetapi didahului oleh tanda #.
Tipe
Ukuran Memory
Karakter yang dapat disimpan
ANSIChar
1 byte
Satu karakter ANSI
Word
2 byte
Satu karakter Unicode
Shortint
1 byte
Indentik dengan ANSIChar

Real, merupakan tipe data yagn berhubungan dengan bilangan real. Tipe data ini dapat dikenali sebagai data real jika ditulis dengan satu titik desimal misalnya 6.65 atau dengan bentuk eksponensial misalnya 6.65 x 1031 atau 6.65 x 10-31.
Tipe
Jangkauan Nilai
Ukuran Memory
Real
± 2,9 x 10-39 s.d ± 1,7 x 1038
2 byte
Single
± 1,5 x 10-45 s.d ± 3,4 x 1038
4 byte
Double
± 5,0 x 10-324 s.d ± 1,7 x 10308
8 byte
Extended
± 3,6 x 10-4951 s.d ± 1,1 x 104239
10 byte
Comp.
- 2-63 + 1 s.d ± 263 - 1
64 byte integer
Currency
- 922337203685477.5808 s.d.
- 922337203685477.5807
64 byte integer

String, tipe data ini merupakan pengembangan dari tipe char. Sebuah string dapat terdiri dari deretan karakter. Terdapat empat jenis string. Perhatikan tabel berikut.
Tipe
Panjang String terbesar
Elemen yang dapat disimpan
Shortstring
255 karakter
Ansichar
Ansistring
(231 karakter (± 3 GB)
Ansichar
Widestring
(230 karakter (± 1,5 GB)
Widechar
String
255 karakter (± 3 GB)
Ansichar

Penulisan String dalam pascal selalu diawali dan diakhiri tanda apostrof (’). Perhatikan contoh berikut. :
3012 termasuk integer atau longint
3012. termasuk real (ada titik dibelakang angka 2)
4.5625 termasuk real
6E33 termasuk real
5644 termasuk longint
True termasuk boolean
‘SY’ termasuk char atau string
‘Zul1309’ termasuk string
#68 termasuk char
‘ ‘ termasuk string nul karena tidak ada karakter yang diapit oleh apostrof
‘Met-ultah’ termasuk char

Identifier
Perhatikan, pada saat menulis judul program, variable, konstanta, prosedur, fungsi dan lainnya harus diberi nama yang sering disebut dengan Identifier.

Identifier ini dapat berupa kombinasi huruf, angka dan garis bawah (undescore) yang diawali oleh huruf abjad dan tidak boleh ada spasi (sebagai gantinya digunakan garis bawah), dan paling banyak mengandung 64 karakte. Perhatikan contoh berikut
Menghitung_Arus_Listrik (benar)
Relativitas Atom (salah, ada spasi)
Komputer_Optik (benar)
5_Akar_Dari (salah, diawali angka)
Kata kunci (reserved word) seperti writeln, read, readln, write, clrscr, wincrt tidak boleh digunakan sebagai identifier.

Variabel dan deklarasi variabel
Data yang selalu berubah-ubah nilainya disimpan dalam memory yang dikenal dengan nama VARIABEL. Semua variabel yang ada harus dideklarasikan terlebih dahulu di awal program setelah judul program dan sebelum bagian utama program. Deklarasi variable diawali denga VAR dan diikuti oleh identifier variable yang ditulis dengan tanda titik kembar (:) kemudian jenis variabelnya. Jadi data yang dimasukkan harus sesuai dengan jenis variabelnya.


PROGRAM Menghitung_Volume_Balok; (Judul Program)

USES (deklarasi uses)
Wincrt;

VAR ( bagian deklarasi variabel)
Panjang : real;
Lebar : real ;
Tinggi : real;
Volume : real;

BEGIN (awal bagian utama program)
Panjang := 10;
Lebar := 5;
Tinggi := 3;
Volume := panjang*lebar*tinggi;
Writeln(‘Volume Balok = “, volume);
END. (akhir bagian utama program)

PROGRAM Menghitung_Volume_Balok; (Judul Program)

USES (deklarasi uses)
Wincrt;

VAR ( bagian deklarasi variabel)
Panjang , Lebar, Tinggi, Volume : real;

BEGIN (awal bagian utama program)
Panjang := 10;
Lebar := 5;
Tinggi := 3;
Volume := panjang*lebar*tinggi;
Writeln(‘Volume Balok = “, volume);
END. (akhir bagian utama program)


Karena terdapat jenis variabel yang sama (real) untuk data yang berbeda ( panjang, lebar, tinggi, volume) maka program dapat disederhanakan

OPERATOR adalah simbol-simbol atau kata-kata yang dibunakan untuk melaksanakan operasi terhadap data dan variabel
Gabungan antara variabel, data dan operator sering disebut sebaga EKSPRESI. Sebenarnya ekpresi ini menyatakan cara menghitung data atau variabel baru dari sejumlah data dan variabel yang sudah ada. Hasil perhitungan ekspresi akan disimpan didalam variabel. Untuk memasukkan data ke variabel, gunakan operator := (tidak boleh ada spasi antara : dan =)

Konstanta dan Deklarasi Konstanta
Konstanta merupakan data yang memiliki nilai tetap yang dapat berupa angka, karakter, string, true/ false, char dan lainnya. Deklarasi konstanta diawali dengan CONST. Antara konstanta dengan identifier dipisahkan oleh tanda sama dengan ( = )

CONST
Phi = 3.14;
Harga_pisang = 500;
Dll.

Contoh program menggunakan konstanta
USES
Wincrt;

CONST
phi = 3.14;
jejari = 7;

BEGIN
Writeln ('Phi = ', phi);
Writeln ('Jari-jari = ', jejari, ' cm');
Writeln ('Luas lingkaran = ', phi*jejari*jejari, 'cm2');

END.
Membuat program untuk Operasi Logika

Sebuah program seringkali harus mengerjakan sejumlah pernyataan jika suatu kondisi syarat harus dipenuhi dan mengerjakan sejumlah pernyataan lain jika kondisi atau syarat tidak dipenuhi. Untuk menanggapi masalah ini Pascal menggunakan empat pernyataan bersyarat, yaitu : IF – THEN, IF – THEN .. ELSE, CASE – OF DAN CASE – OF .. ELSE

Pernyataan IF -THEN

Adalah perintah untuk mengadakan perbandingan.
Bentuk umum : IF perbandingan dipenuhi THEN lakukan ini
atau IF perbandingan dipenuhi THEN lakukan ini ELSE jika tidak
atau IF perbandingan dipenuhi THEN
Begin
Lakukan sekelompok instuksi
End;
Atau IF perbandingan dipenuhi THEN
Begin
Lakukan sekelompok instuksi
End {tidak boleh titik komma}
ELSE
Begin
Lakukan instuksi ini
End;
Contoh :
Program Menggunakan_IF_THEN_ELSE; {Judul Program}

USES {Deklarasi uses}
Wincrt;

Var {gabian deklasari variabel}
nilai : Real;

Begin {awal bagian utama program}
Write('Nilai TIK = ');
Readln(nilai);
Writeln(' ');
{menyeleksi nilai TIK yang diperoleh, Remedial atau tidak}

IF nilai>65 THEN Writeln('Anda LULUS ')
ELSE
Writeln('Kacian dech lu harus mengikuti REMEDIAL');
End. {akhir bagian utama program}

Pernyataan CASE .. OF .. ELSE .. END
Perintah untuk memilih sekelompok data
rogram Menggunakan_CASE_OF_ELSE_END; {Judul Program}

USES {Deklarasi uses}
Wincrt;

Var {bagian deklasari variabel}
kar : Char;

Begin {awal bagian utama program}

Clrscr;
Writeln('Tekan Sembarang Tombol !!!');
kar:=readkey;

Case kar OF
'A'..'Z', 'a'..'z':Writeln ('Anda telah menekan huruf ',kar);
'0'..'9' :Writeln('Anda telah menekan angka ',kar);
'+','-','*','/' :Writeln('Anda telah menekan operator ',kar);
ELSE
Writeln('Anda telah menekan karakter khusus');
End;
Readln;

End. {akhir bagian utama program}

Membuat program dengan perulangan

Pascal memiliki tiga bentuk pernyataan perulangan (looping) yaitu FOR ... TO/DOWN TO.. DO, WHILE-DO dan REPEAT-UNTIL.

Pernyataan For ... To/ Down to ... Do adalah perintah untuk membuat pengulangan (loop) sebanyak angka yang diberikan pada variabel awal dan akhir. Perintah to untuk menaik, sedang down to untuk menurun.
Contoh
Program For_Pas;
USES wincrt;

Var I: Integer;

Begin
Clrscr;
For I:=1 to 3 do Writeln('Saya mencetak 3 kali');

For I:=1 to 10 do Writeln('No: ',I);

For I:=50 to 55 do
Begin
Writeln('Naik: ',I);
End;

For I:=60 downto 55 do
Begin
Writeln('Turun: ',I);
End;
Readln;
End.

Pernyataan While - To digunakan untuk memproses kegiatan pengulangan terhadap syarat dan akibat. (syarat) merupakan ekspresi boolean dan (akibat) merupakan satu atau beberapa pernyataan yang dieksekusi berulangkali selama (syarat) masih bernilai TRUE.
Contoh :
Uses wincrt;
var pass1,pass2:string;
Begin
Clrscr;
pass1:='SMUN3';
write('Masukkan password anda !!! ');
While pass1<> pass2 do readln(pass2);
Writeln('Password anda sudah benar.');
Writeln('Lanjutkan ...');
End.

Pernyataan For ... To/ Down to ... Do adalah
Repeat..Until digunakan untuk mengulang (repeat) pernyataan sampai (until) syarat di UNTIL tidak memenuhi lagi.
Contoh :
Uses wincrt;
var B:Byte;
Begin
Clrscr;
B:=1;
writeln('Tekan sembarang tombol untuk selesai ');
writeln('sekarang tekan ENTER untuk memulai ');
Readln;
Repeat
writeln(B);
inc(b);
Until Keypressed;
End.
Menggunakan Perulangan dengan memanfaatkan Sub Routine

Nama lain sub routine adalah PROCEDURE. Pascal hanya mengenal Procedure dan Function. Keduanya memiliki kemampuan membagi program menjadi beberapa modul.
Function merupakan modul program yang ditulis menurut aturannya untuk membantu bagian utama program. Perhatikan :
- Function XkaliY(x,y : real):real;
Maksudnya adalah fungsi real bernama XkaliY dengan dua parameter real
yaitu x dan y.
- Funtion zakat(kodewilalay:integer;gaji:real;status:char):real;
Maksudnya adalaha fungsi real bernama zakat dengan,
sebuah parameter integer yaitu kodewilayah
sebuah parameter real yaitu gaji
sebuah parameter char yaitu status.

Contoh :
Program Konversi_satuan_gaya;

Uses wincrt;
var Newton,dyne:real;

Function KonversiSatuan(x:real):real;

Const Faktor = 100000; { 1newton = 100000 dyne}

Begin
KonversiSatuan := x*Faktor
End;

Begin
writeln('Tuliskan gaya dalam satuan Newton = ');
readln(Newton);
dyne:=KonversiSatuan(Newton);
writeln;
writeln('Gaya yang dihasilkan = ', dyne:10:0,' dyne');
Readln;

End.

Procedure
Di dalam Pascal, PROCEDURE memiliki nama atau judul dan diakhiri tanda titik komma.

Contoh:
Program Menggunakan_Procedure;

Uses wincrt;
Procedure Pengumuman;
Begin
Writeln('Pelajaran TIK untuk kelas XII');
Writeln('Pascal For Windows');
Writeln('Dimohon mengerjakan Tugas');
End;
Begin Pengumuman;
Writeln;
Writeln('Tugas Kelompok 5 Orang');
End.

Komentar

Anonim mengatakan…
ada beberapa kata yang belum bisa saya pahami.
Anonim mengatakan…
TulisaNnyA a9ak kebearan jadinya ngantuk,,tp udh LumaYan! ;)
Anonim mengatakan…
bagus kOk...
Daripada beli buku buang-buang duit mending baca di computer .
bisa belajar secara praktek dan materi .
it's so good
tapi gimana cara buat kayak gini pak ?
Anonim mengatakan…
waduhhh... mau komentar apa yah...?
akyu blum baca ug hehehe...

soal na terlalu panjang, orang yang mau baca dah puyeng duluan..

jadi menurut aku lebih disingkatin ajh yah..

terus di kasih background atau layout yang menarik
supaya yang baca juga tertarik..

okkeh!!
Anonim mengatakan…
pak backgrounnya terlalu monotone n' tulisane kekecilan jadi bkin yg bca pusing
Anonim mengatakan…
Pak,Blog'ipun sampun sae. .
Kpn2 tak mbukak mneh. .
Anonim mengatakan…
bagus tapi masi ada yang kurang,
jelek tapi yang bagus jga banyak.

buat yg lbh colorful dan banyak gambare. ^^ .

berjuanggggg!!!

Postingan populer dari blog ini

Sejarah Komputer

Hardware