Tulisan ini merupakan salinan tulisan saya di http://kampuskami.komitmi.org/?p=5
Terus terang, saya bukan penggemar teori, tapi ada pepatah dalam pemrograman bahwa “jika praktek tanpa teori, maka program tersebut tidak akan terstruktur dengan baik”, jadi mau tidak mau dalam mengusai suatu bahasa pemrograman kita harus mengenal dan tahu tentang teori dari bahasa pemrograman itu sendiri agar mempermudah kita pada pengerjaan dan pengembangannya.
Pascal merupakan bahasa pemrograman tempo dulu, mungkin teman-teman lebih paham dengan definisi pascal itu sendiri, dan silahkan cari di search engine internet, akan sangat banyak ditemukan teori-teori dan contoh-contoh program pascal.
Disini saya hanya akan me-review dan menguraikan sedikit pemahaman saya terhadap materi kuliah Pascal, dikarenakan ketika minggu kemarin ( saya kurang enak badan dan “ngantuk berat”
) saat perkulihan materi pascal tersebut, saya sempat mengutip sedikit pertanyaan teman-teman saya kepada dosen (Bpk Wawang S.Kom ) seputar kesulitan dan kurang pemahaman terhadap materi pascal itu sendiri.
Sekali lagi, pada tulisan kali ini saya mencoba untuk membantu menguraikan dan me-review permasalahan tersebut dan semoga menjadi manfaat bagi teman-teman yang masih kurang paham. Paling tidak, saya bisa menyimpan koleksi ilmu pengetahuan disini, jika suatu saat saya lupa maka akan mudah untuk menemukannya kembali :p.
Struktur Bahasa PASCAL secara umum, adalah sebagai berikut :
1. Bagian Judul Program
2. Bagian Deklarasi :
a. Deklarasi tipe data (TYPE)
b. Deklarasi variabel (VAR)
c. Deklarasi konstanta (CONST)
d. Deklarasi label (LABEL)
e. Deklarasi sub-program (PROCEDURE dan FUNCTION)
3. Bagian Deskripsi (Bagian Program Utama Perintah-perintah).
Saya tidak akan me-review teori maupun praktek contoh-contoh program pascal yang materi tersebut belum disampaikan oleh dosen kita tercinta ( Bpk Wawang S.Kom ).
Berikut saya coba review materi yang sudah disampaikan oleh dosen kita, dan saya anggap perlu untuk di sampaikan pada tulisan ini.
Program heading / Judul Program
Judul program dalam Turbo Pascal bersifat optional dan tidak ada pengaruhnya dalam program. Jika ditulis akan memberikan nama program dan suatu daftar parameter optional dimana program itu berkomunikasi. Daftar itu bisa terdiri dari sederetan indentifier yang diakhiri dengan tanda kurung dan dipisahkan dengan tanda koma.
Contoh :
Program Latihan(Input,Output);
Uses Clause
Bagian uses clause digunakan untuk menentukan library yang dibutuhkan saat proses program. LIBRARY merupakan file penyimpan subroutine yang secara berulang digunakan saat proses program. Library ini diistilahkan sebagai unit dalam Turbo PASCAL yang terdiri dari SYSTEM, OVERLAY, GRAPH, DOS, CRT, WINCRT yang ditempatkan dalam file TURBO.TPL.
Karena di perkuliahan kita menggunakan Turbo Pascal For Windows 1.5 maka hal ini tidak perlu dibahas secara mendalam, intinya kita hanya menerapkan Uses Clause pada unit WINCRT.
Sebagai catatan, Unit system merupakan unit yang secara otomatis akan disertakan dalam setiap program, unit inilah yang mengatur semua perintah dasar input dan output pada Pascal. Sedangkan unit-unit lain hanya akan disertakan bila kita pilih pada bagian uses.
Contoh penerapan :
Uses WinCrt; (menggunakan Unit WinCrt)
Declaration
Bagian ini meliputi deklarasi untuk label, const, type, var, procedure dan function.
Syarat terpenting dalam pembentukan suatu program adalah, bahwa setiap variabel, type non-standard, label, procedure non-standard, serta function non-standard yang dipakai didalamnya harus di-“nyatakan” / di-“deklarasi”kan terlebih dahulu pada bagian deklarasi. Setiap deklarasi tersebut harus bersifat unik (tidak boleh serupa satu sama yang lain).
Penulisan nama dalam deklarasi tersebut harus memenuhi syarat-syarat sebagai berikut :
- panjang nama maximum 63 character, diawali dengan alphabet
- tidak ada special character kecuali tanda garis bawah / underscore (“_”)
- tidak boleh serupa dengan reserved word (kata tercadang)
- tidak boleh serupa dengan indentifier lainnya.
Ketentuan penulisan identifier :
a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A sampai Z atau karakter ‘_’ (underscore / garis bawah)
b. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik (huruf-numerik).
c. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63.
d. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ?
Contoh Penulisan yang benar : w_1ro Alpha Satu_Sisi luasPersegi
Contoh Penulisan yang salah : 3D satu-Sisi C#
Jenis identifier
a. Identifier umum
Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram mempunyai kebebasan untuk menentukan nama identifiernya, dengan syarat nama tersebut tidak sama dengan identifier standar dan reserved word yang akan dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul akibat tumpang tindih identifier dalam program.
b. Identifier Standar (Baku)
Merupakan identifier yang didefinisikan oleh pembuat kompiler Pascal. Biasanya pembuat kompiler menyediakan suatu library yang sudah ada didalam kompiler. Library berisi berbagai procedure, fungsi atau unit yang sudah siap pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh programmer di dalam menuliskan kode-kode programnya.
Dinamai Identifier Standar karena suatu kompiler tidak harus memilikinya, masing-masing kompiler dimungkinkan mempunyai identifier yang berbeda untuk suatu tugas yang hampir sama, misalnya Turbo Pascal versi DOS menggunakan crt untuk melakukan fungsi yang sama dengan wincrt (TPW 1.5).
Beberapa Identifier Standar yang dimiliki oleh kompiler-kompiler Pascal antara lain:
abs arctan boolean char cos dispose eof eoln exp false input integer ln maxint new odd ord output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunc write writeln
c. Identifier “reserved word”
yaitu yang sudah didefinisikan dan digunakan oleh bahasa PASCAL itu sendiri (Kita tidak bisa menamai identifier kita dengan ini).
Beberapa Reserved Word dalam Pascal antara lain:


Selain dari Reserved Word di atas, Turbo Pascal masih memiliki tambahan Reserved Word berikut:
ABSOLUTE ASSEMBLER () FAR FORWARD INDEX
Variable Declaration
Setiap variabel yang digunakan dalam program harus didefinisikan terlebih dahulu sebelum digunakan. Cara penulisan ini adalah :
Var
<nama var> : <type data variable>;
Statement
Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END.
Akhir dari setiap statemen diakhiri dengan titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.
Bagian ini merupakan inti dari program. Seluruh perintah dan urutannya serta proses Input/Output dalam program perlu disusun secara teratur oleh penyusun program. Segala yang ada pada bagian uses maupun deklarasi merupakan pendukung terhadap isi program.
Comment
Untuk membuat program kita menjadi mudah dibaca dan dimengerti, maka perlu diberi keterangan (Comment) yang akan diabaikan oleh kompiler. Untuk membuat keterangan gunakan tanda kurawal
Contoh penerapan :
{ ini adalah keterangan } atau
(* ini adalah keterangan *).
Type data yang disediakan Turbo Pascal
Type variable yang disediakan pada TURBO PASCAL :
1. Ordinal types
Type data yang mempunyai urutan pasti, dan masih terbagi menjadi
a. Integer
Type variable yang beguna untuk pengolahan data yang bulat (bilangan bulat), type ini masih terbagi atas berberapa menurut jangkauan data dan ukurannya :
|
Type |
Jangkauan |
Ukuran |
|
Shortint |
-128 .. 127 |
8 bit |
|
Integer |
-32768 .. 32767 |
16 bit |
|
Longint |
-2147483648 .. 2147483647 |
32 bit |
|
Byte |
0 .. 255 |
8 bit |
|
Word |
0 .. 65535 |
16 bit |
b. Char
Type variabel yang berguna untuk pengolahan character ASCII, type character ini penulisannya ditandai dengan dua buah petik tunggal seperti : ‘A’, ‘3′,’*',#7 untuk menyatakan ‘ harus ditulis ””
c. Boolean
Type variable yang berguna untuk pengolahan hal yang hanya mempunyai dua ketentuan yaitu benar(TRUE) dan salah(FALSE) saja.
2. Real types
Type variable yang beguna untuk pengolahan data yang tidak bulat(bilangan desimal), untuk type real ini juga terbagi atas:




Untuk pengolahan type variabel diatas di sediakan berbagai jenis operator antara lain :


Operator relasi yang mengembalikan hasil Boolean


Proses pemrograman komputer
Ketika melakukan pemrograman dengan menggunakan bahasa tingkat tinggi, ada beberapa operasi yang harus dilakukan. Mekanisme ini dikenal sebagai siklus edit-compile-run. Mempelajari proses ini adalah berbeda dengan belajar bagaimana untuk membuat program; kita harus menguasai proses ini, dan hal tersebut adalah penting.
Berikut ini adalah proses membuat sebuah program :
1. Edit
Ketika kita menulis sebuah program dalam bahasa tingkat tinggi, kita menulis perintah-perintahnya dalam bentuk perintah bahasa pemrograman dengan menggunakan text editor.
Dokumen yang kita hasilkan pada tahap ini dikenal sebagai source code.
2. Compile
Setelah kita selesai menulis program kita, kita perlu meng-kompilasi-nya dengan menggunakan suatu software yang disebut sebagai compiler. Kompiler mengubah source code kita menjadi bahasa mesin. Jika program kita gagal di kompilasi (tejadi kesalahan “grammatical” atau sytnax errors pada kode kita), kita harus meng-edit kembali kode kita sampai dapat dikompilasi dengan benar.
Setelah suatu program berhasil dikompilasi artinya dia telah benar secara syntax, tetapi masih dapat mengandung runtime error, atau logical error.
3. Run
Setelah program kita dikompilasi, kita dapat menjalankannya. Ketika kita menjalankan program kita, hal yang pertama yang perlu kita lakukan adalah memeriksa apakah program tersebut berjalan seperti yang diharapkan, proses ini dikenal sebagai testing.
Pada tahapan ini dapat ditemui logical error ataupun runtime error. Untuk menghilangkan runtime error atau logical error kita perlu kembali ke langkah pertama, jadi inilah yang dikenal sebagai siklus edit-compile-run sampai program dapat berjalan dengan benar.
Semoga bermanfaat
Sumber & Referensi :
1. Ebook Hendro, ST – Algoritma dan Pemrograman
2. Berbagai sumber buku dan sumber internet
DIarsipkan di bawah: Pascal
mas gmana kalo ada rumus program pascal
Y=ab2*c+b
itu akarya mas ab2 pake wite aja mas..
sama read
gmana jalaninya.
terima kasih atas bantuannya
salam dani
mas dani,
terimakasih atas comment dan pertanyaannya.
jujur, saya masih bingung dengan kalimat dari pertanyaan mas dani.
Semoga pertanyaan mas dani bukan hanya ngetest :p.
Saya akan jawab,
“,
” Banyak jalan menuju roma mas dani
simpelnya mungkin program berikut bisa menjawab pertanyaan dari mas dani.
Silahkan di run :
Start Program___________
Uses wincrt;
var
a,b,c : real;
begin
’);
clrscr;
write (‘Masukkan Nilai a : ‘); readln (a);
write (‘Masukkan Nilai b : ‘); readln (b);
write (‘Masukkan Nilai c : ‘); readln (c);
writeln;
writeln (‘Untuk Akar Kuadrat’);
writeln (‘==================’);
write (‘Jika yang dimaksud adalah rumus : Y=ab2*(c+b) ‘);
writeln (‘Maka Y = ‘, sqrt(a*b)*(c+b):2:1);
write (‘Jika yang dimaksud adalah rumus : Y=ab2*c+b ‘);
writeln (‘Maka Y = ‘, sqrt(a*b)*c+b:2:1);
writeln;
writeln (‘Untuk Pangkat Kuadrat’);
writeln (‘=====================’);
write (‘Jika yang dimaksud adalah rumus : Y=ab2*(c+b) ‘);
writeln (‘Maka Y = ‘, sqr(a*b)*(c+b):2:1);
write (‘Jika yang dimaksud adalah rumus : Y=ab2*c+b ‘);
writeln (‘Maka Y = ‘, sqr(a*b)*c+b:2:1);
writeln;
writeln;
writeln (‘Semoga membantu
writeln;
writeln (‘w1r0′);
readln;
end.
End Program___________
Semoga membantu
thanks yooo mas.
suuwre saya kaga tau itu soal dari dosen kita jabarinnya aja atau ngembangkannya.( alias usaha membuatnya,
oke thanks
Ok sama2 mas dani.. jangan kapok ya
tolong di ralat jika ada kesalahan
and jangan bosen untuk selalu tukar pikiran.
Mas ada soal seperti ini
Uses Wincrt;
Var i,j : integer;
A: array [1..3,1..3] of integer;
Begin
for i:=1 to 3 do for j:=1 to 3 do
a[i,j] :=0;
for i:=1 to 3 do
Begin
for j:=1 to 3 do A[j,i] :=i*j;
if 1> 1 then
for j:=1 to 3 do
inc (a[j,i-1],a[j,i]); {baris ke 12}
End;
For i:=1 to 3 do
Begin
for j :=1 to 3 do
Write (a[i,j],’ ‘);
Writeln;
End;
End.
Tolong berikan penjelasan yang sedetail2-nya tentang hasil dan cara pengerjaannya, ya…^~^
Walaupun rada rieut, tapi lumayan asyik juga belajar pascal, kang wiro saya juga sedang belajar di CBI kelas V smt 2. Kang wiro kuliahnya hari apa? Saya ingin konsultasi mengenai blog dan situs, kebetulan saya katempuhan mengelola beberapa blog MGMP padahal saya bener2 awam di dunia cyber ini.
ini alamat blog yang sedang mau dikelola :
http://ipa.mgmpsukabumi.org
http:/informatika.mgmpsukabumi.org
http://matematika.mgmpsukabumi.org
dan http://smpn1cikakak.mgmpsukabumi.org
kalau ada waktu kunjungi dan mohon saran dan kritiknya
Endang Muhtadin : endangmuhtadin@mgmpsukabumi.org
penertian tpw apa sich secfara jelasnya
@ Pak Endang Muhtadin
Mohon maaf pak Endang, sekian lama baru bisa saya jawab komentar bapak ini karena memang saya baru akses blog ini lagi.
Saya di kelas v1 pak, dan saya kuliah hari Sabtu dan Minggu. Email saya w1r0cscnet [at] gmail.com.
Salam kenal pak
@ Khotim
Maksudnya algoritmanya ya.. silahkan mainkan logikanya mas, saya juga manusia.. punya keterbatasan waktu dan ilmu.
Untuk berdiskusi saya undang mas agar bergabung di Forum komitmi.org dengan alamat http://www.komitmi.org/newforum
Ditunggu ya mas
@ adryansah
Sepertinya mas ini males browsing deh hehe… coba deh PeDeKaTe sama mang Google yang memang dia adalah sarana gudangnya ilmu untuk saat ini.
sebagai uraian singkat saya hanya jelaskan sedikir saja, bahwa tpw adalah singkatan dari Turbo Pascal for Windows. TPW merupakan kompiler pascal yang berjalan diatas SO Windows (UnderWindows), dan tpw mempunyai identifier atau satu unit khusus untuk memproses output yaitu wincrt.
Semoga membantu
ass. saya adil mahasiswa baru di itenas..mas terus terang saya baru sangat mengenal apa yang namanya turbo pascal. justru itu saya ingin lebih tau..
mas ketika kita menuliskan perintah
if x:=A then writeln(‘nilai anda bagus’);
nah mas ketika saya ingin menuliskan sintak
if x:=a atau b atau c atau d then writeln(‘nilai anda bagus’);
nah mas menuliskan atau nya itu bagaimana?????mohon bantuannya….terima kasih
@ mas dading
var x : Char;
begin
clrscr;
write(‘Nilai : ‘);readln (x);
if (x=’A') or (x=’B') or (x=’C') or (x=’D') then
write(‘Nilai anda bagus’)
else
writeln (‘Nilai anda jelek’)
end.
Semoga membantu mas
Misi smua na. Numpank nanya y n_n
klo misal na ada soal case of;
ada minyak goreng:1. filma, 2. bimoli, n 3. sunrise.
tiap2 merk ada 3 ukr. b= besar, s=sedang, k=kecil.
klo filma ukr b =10.000,s=7.500,k=5.000;
bimoli ukr b=9.000,s=8.000,k=6500;
sunrise ukr b=11000,s=9000,k=7000;(harga)
dimasukkan nma pembli,no merk miny gor,ukr,jml pemb.
yg dhslkan nma pembli, nama merk,ukr,jml,harga bayar
klo bs dbls na ari ini y sblun jem 5. makacii
tulungin dunk smua. Tgs na dah musti kumpul n. TT.TT hiks”
@ rud!
http://komitmi.org/newforum/index.php/topic,32.0.html
mas,… saya pemula lagi mulai belajar pascal. logika untuk menampilkan bilangan yang kelipatan 2 tetapi bukan kelipatan4 pada pascal gimana ya??? kalo bisa sekalian ma syntaksnya ya maz. thx.
maz kalo bisa sebelm hari minggu ya… darurat nih maz untuk tugas.. hehehhehe.. thanks
mas. saya minta softwarenya TPW -15 dong tuk belajar.
mas, saya mau donk dikasi software nya, borland delphi, windows saya eror jadinya g bisa dech
@zaza @Muhdi @Usep
Saya bingung upload kemana, lagian koneksi nya lemot. Coba cari di google, saya rasa banyak referensinya
mas saya bsa minta tlong gak
tlg buatain sintak program pascal tentang fisika mekanika yang langsung bisa di run
thanks
mas saya ada tugas buat program tpw 1.5 yang judulnya magnet. bisa bantuiin gak ya please
halo smua. . . nhe gw lg bljr pascal. . . ad yg bs ksh cnth penerepan rumus fisika dlm pascal gk? kalo bs. . jgn yg terlalu simple. . . m0h0n d blz y. .
q lgi bljr pascal ‘n da tgs membuat program menghitung gaji karyawan dan menampilkannya dalam tabel. yang q ga bsa itu nampilin dlm tabel … gmn cara buat tabel dlm pascal???
please yg taw ksi taw q yaaaa
mas,, gimana sih cara buat * di pascal ?
* *
* * *
mas,, gimana sih cara buat
* di pascal ?
* *
* * *
mas… aq mau nanya…
gimana cara buat program sederhana di TPW 1 yang hasilnya
masukkan nama anda: “asma”
apa kabar “asma”