Panduan Dasar TPW 1.5

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:

tbl_reservedword

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:

tbl_realtype

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

tbl_operator

tbl_operator

Operator relasi yang mengembalikan hasil Boolean

tbl_operator

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

27 Tanggapan

  1. 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

  2. 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 :)

  3. thanks yooo mas.
    suuwre saya kaga tau itu soal dari dosen kita jabarinnya aja atau ngembangkannya.( alias usaha membuatnya,
    oke thanks

  4. Ok sama2 mas dani.. jangan kapok ya :)
    tolong di ralat jika ada kesalahan
    and jangan bosen untuk selalu tukar pikiran.

  5. 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…^~^

  6. 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

  7. penertian tpw apa sich secfara jelasnya

  8. @ 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 :)

  9. @ 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 :)

  10. @ 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 :)

  11. 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

  12. @ 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 :)

  13. 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

  14. tulungin dunk smua. Tgs na dah musti kumpul n. TT.TT hiks”

  15. 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.

  16. maz kalo bisa sebelm hari minggu ya… darurat nih maz untuk tugas.. hehehhehe.. thanks

  17. mas. saya minta softwarenya TPW -15 dong tuk belajar.

  18. mas, saya mau donk dikasi software nya, borland delphi, windows saya eror jadinya g bisa dech

  19. @zaza @Muhdi @Usep

    Saya bingung upload kemana, lagian koneksi nya lemot. Coba cari di google, saya rasa banyak referensinya :)

  20. mas saya bsa minta tlong gak
    tlg buatain sintak program pascal tentang fisika mekanika yang langsung bisa di run
    thanks

  21. mas saya ada tugas buat program tpw 1.5 yang judulnya magnet. bisa bantuiin gak ya please

  22. 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. .

  23. 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

  24. mas,, gimana sih cara buat * di pascal ?
    * *
    * * *

  25. mas,, gimana sih cara buat
    * di pascal ?
    * *
    * * *

  26. mas… aq mau nanya…
    gimana cara buat program sederhana di TPW 1 yang hasilnya
    masukkan nama anda: “asma”
    apa kabar “asma”

Tinggalkan Balasan