BAB I - BAB Total.doc

BAB I MENGENAL PASCAL

  1.1. Pendahuluan Pascal adalah bahasa tingkat tinggi (high level language) yang orentasinya

dirancang pada segala tujuan, dirancang oleh Professor Niklaus Wirth dari Technical

  

University di Zurich, Switzerland. Nama Pascal diambil sebagai penghargaan

terhadap Blaise Pascal, ahli matematik dan philosofi terkenal di abad 17 dari Perancis.

  Professor Niklaus Wirth memperkenalkan kompiler bahasa Pascal pertama

kali untuk komputer CDC 6000 (Control Data Corporation) yang dipublikasikan pada

tahun 1971 dengan tujuan untuk membantu mengajar program komputer secara

sistematis, khususnya untuk memperkenalkan pemrogaman yang terstruktur

(structured programming). Jadi Pascal adalah bahasa yang ditujukan untuk membuat

program terstruktur.

  Dalam waktu singkat, Pascal telah menjadi bahasa yang populer di kalangan

pelajar universitas dan merupakan bahasa yang diajarkan di beberapa perguruan

tinggi. Beberapa profesional komputer juga mulai beralih ke bahasa Pascal.

Kenyataannya, Pascal merupakan bahasa yang paling cepat populer dibandingkan

dengan bahasa-bahasa komputer tingkat tinggi lainnya.

  Turbo Pascal adalah copyright oleh BORLAND Inc.dapat digunakan pada

sistem operasi PC-DOS, MS-DOS, CPM-86 dan CP/M-80. Buku ini menggunakan

Turbo Pascal versi 7.0. Selain itu BORLAND Inc. Juga telah mengembangkan Pascal

menjadi bahasa pemrogaman visual yaitu Borland Delphi dengan struktur bahasa

pemrogaman Pascal yang telah dikembangkan lebih lanjut lagi.

  1.2. Struktur Program Pascal Struktur dari suatu program Pascal terdiri dari sebuah judul program (program

heading) dari suatu blok program (program block) atau badan program (body

program). Blok program dibagi lagi menjadi dua bagian, yaitu bagian deklarasi

(declaration part) dan bagian pernyataan (statement part). Bagian deklarasi ini dapat

terdiri dari deklarasi label (labels declaration), deklarasi konstanta (constants

declaration), deklarasi tipe (type declaration), deklarasi variabel (variables

declaration), deklarasi prosedur (procedures declaration), dan deklarasi fungsi

(function declaration). Secara ringkas, stuktur program Pascal dapat terdiri dari :

  1. Judul program

  2. Blok program Judul program

  a. Bagian deklarasi  deklarasi label Bagian deklarasi

   deklarasi konstanta  definisi tipe  deklarasi variabel Bagian pernyataan

   deklarasi prosedur

   deklarasi fungsi

  b. Bagian pernyataan

1.3. Deklarasi

  

identifier tersebut dikenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan

terlebih dahulu pada bagian ini.

  1.3.1. Deklarasi Konstanta Definisi konstanta diawali dengan kata const diikuti oleh kumpulan identifier yang diberi suatu nilai konstanta.

  program contoh_konstanta; uses crt; const potongan = 0.2; gaji = 25000; nama_perusahaan = 'PT Lali Jaya'; begin clrscr; writeln('potongan = ',potongan); writeln('gaji = ',gaji); writeln('nama = ',nama_perusahaan); readln; end.

  1.3.2. Deklarasi Variabel Variabel adalah identifier yang diberi data yang dapat berubah-ubah nilainya di dalam program.

  program contoh_variabel; uses crt; var total,gaji,tunjangan : real; menikah : boolean; jumlahanak : integer; keterangan : string[25]; begin clrscr; gaji := 50000; menikah := true; jumlahanak := 4; tunjangan := 0.25 * gaji * jumlahanak; total := gaji + tunjangan; keterangan := 'karyawan Teladan'; writeln('Gaji Bulanan : Rp. ',gaji); writeln('Tunjangan : Rp. ',tunjangan); writeln('Total gaji : Rp. ',total); writeln('Sudah Menikah : ',menikah); writeln('Jumlah Anak : ',jumlahanak); writeln('keterangan : ',keterangan); readln; end.

  1.3.3. Deklarasi Tipe Deklarasi ini terdiri dari:

1. Tipe data sederhana (simple-type data) terdiri dari :

a. Tipe data standar (standard data type) :

   integer  real

   char

   string

   subrange type

2. Tipe data terstruktur (structured-type data), terdiri dari :

  a. array

  b. record

  c. file

  d. set

  program contoh_type; uses crt; type pecahan = real; logika = boolean; bulat = integer; huruf = string[25]; var total,gaji,tunjangan: pecahan; menikah : logika; jumlahanak : bulat; keterangan : huruf; begin clrscr; gaji := 50000; menikah := true; jumlahanak := 4; tunjangan := 0.25 * gaji * jumlahanak; total := gaji + tunjangan; keterangan := 'karyawan Teladan'; writeln('Gaji Bulanan : Rp. ',gaji); writeln('Tunjangan : Rp. ',tunjangan); writeln('Total gaji : Rp. ',total); writeln('Sudah Menikah : ',menikah); writeln('Jumlah Anak : ',jumlahanak); writeln('keterangan : ',keterangan); readln; end.

1.3.4. Deklarasi Label

  Kalau program anda menggunakan statemen goto untuk meloncat ke suatu

statemen yang tertentu, maka dibutuhkan suatu label pada statemen yang dituju dan

label tersebut harus dideklarasikan terlebih dahulu pada bagian deklarasi.

Mendeklarasikan label diawali dengan kata cadangan label diikuti oleh kumpulan

identifier label dengan dipisahkan oleh koma dan diakhiri dengan titik koma.

  program contoh_label; uses crt; label 100,selesai; begin clrscr; writeln('Bahasa'); goto 100; writeln('BASIC'); writeln('COBOL'); 100: writeln('PASCaL'); goto selesai; writeln('FOTRAN'); selesai: Writeln('Versi 7.0');

  1.3.5. Deklarasi Prosedur Prosedur merupakan bagian yang terpisah dari program dan dapat diaktifkan

dimanapun di dalam program. Prosedur dapat berupa prosedur standar (sudah

disediakan oleh Pascal) maupun prosedur yang akan dibuat sendiri oleh pemakai.

Prosedur dibuat sendiri bilamana program akan dibagi-bagi menjadi beberapa blok

modul. Prosedur dibuat di dalam program dengan cara mendeklarasikannya di bagian

deklarasi prosedur. Kata cadangan procedure digunakan sebagai judul dari bagian

deklarasi prosedur, diikuti oleh identifier yang merupakan nama dari prosedurnya dan

secara optional dapat diikuti lagi oleh kumpulan parameter yang diakhiri dengan titik

koma.

  program contoh_prosedur; uses crt; procedure tambah(x,y :integer; var hasil: integer); begin hasil := x+y; end; {program utama} var z : integer; begin clrscr; tambah(2,3,z); writeln('2 + 3 = ',z); readln; end.

  1.3.6. Deklarasi Fungsi Fungsi juga merupakan bagian program yang terpisah mirip dengan prosedur,

tetapi ada beberapa perbedaanya. Fungsi dapat berupa fungsi standar (sudah

disediakan oleh Pascal) atau Fungsi yang akan dibuat sendiri oleh pemakai. Bila

pemakai akan membuat sendiri suatu fungsi, maka harus dideklarasikan terlebih

dahulu. Kata cadangan function mengawali bagian deklarasi fungsi diikuti oleh

identifier yang merupakann nama dari fungsinya dan secara optional dapat diikuti

oleh kumpulan parameter, tipe dari fungsinya dan diakhiri dengan titik koma.

  program contoh_fungsi; uses crt; function tambah(x,y :integer) : integer; begin tambah := x+y; end; {program utama} var z : integer; begin clrscr; writeln('2 + 3 = ',tambah(2,3)); readln; end.

1.4. Penggunaan Pascal

  

Gambar Tampilan Pascal

Turbo Pascal memiliki 10 buah menu utama yang terdiri dari : File, Edit,

  

Search, Run, Compile, Debug, Tools, Options, Window dan

Help . Untuk memilih salah satu dari menu itu anda bisa menekan tombol Alt + F

  

(untuk memanggil menu file), atau menekan Alt + [huruf pertama dari menu]. Jika

anda ingin kembali ke menu utama anda bisa saja menekan tombol F10,

untuk pindah dari menu satu ke menu yang lain anda juga bisa

menekan panah kanan () atau panah kiri (). Contohnya ketika

anda berada di menu File maka untuk pindah ke menu Compile

anda cukup menggunakan tombol panah kanan () atau panah kiri

(), dan anda juga bisa langsung menekan huruf C. Untuk menutup

menu anda bisa menggunakan tombol Esc. Sebetulnya akan lebh

mudah jika memanggil sebuah menu dengan menggunakan hotkey,

table dibawah ini adalah hotkey yang digunakan dalam turbo pascal

:

  

KUNCI FUNGSI EKIVALEN MENU

F1 Mengaktifkan jendela pertolongan.

  F2 Menyimpan berkas yang ada pada editor. File / Save F3 Memanggil program kedalam editor. File / Load F4 Mengeksekusi program sampai posisi kursor. Run / Go to cursor F5 Memperbesar atau memperkecil jendela yang aktif.

  F6 Mengganti jendela yang aktif. F7 Melacak kedalam subrutin. Run / Trace into F8 Melompati pemanggil subrutin.

  F9 Mengaktifkan perintah ‘Make’. Compile / Make F10 Berpindah dari menu-menu ke jendela yang aktif. Alt + F1 Memanggil jendela pertolongan yang terakhir dibaca. Alt + F3 Memilih berkas untuk dimuat. File / Pick Alt + F5 Memperlihatkan hasil eksekusi. File / user screen Alt + C Mengaktifkan menu compile. Alt + D Mengaktifkan menu debug. Alt + E Mengaktifkan editor.

  Alt + F Mengakaktifkan menu fle. Alt + O Mengaktifkan menu option. Alt + R Mengaktifkan menu run. Alt + X Keluar dari Turbo Pascal dan kembali ke DOS. Ctrl + F1 Menampilkan menu pertolongan bahasa. Ctrl + F2 Menghentikan pembetulan. Run / Program reset Ctrl + F3 Menampilkan isi tumpukan. Debug / Call Stack Ctrl + F4 Melakukan penghitungan atau mengubah nilai Debug / Evaluate peubah.

  Ctrl + F7 Menambahkan ungkapan pada jendela watch. B / Add Watch Ctrl + F8 Toggles Breakpoint. B / Toggle breakpoint Ctrl + F9 Menjalankan program. Run / Run

  Ctrl + Menampilkan versi layar monitor F10

1.5. Unit Pascal

  Unit standar sudah merupakan kode mesin(sudah dikompilasi), bukan kode

sumber Pascal lagi dan sudah diletakkan di memori pada waktu Anda menggunakan

Turbo Pascal 7.0. Sebagai akibatnya, penggunaan suatu unit atau beberapa unit

sekaligus hanya membutuhkan tambahan waktu yang sangat sedikit sekali atau sangat

cepat (kurang dari satu detik) dari seluruh waktu kompilasi program Pascal yang

menggunakannya. Dengan demikian penggunaan suatu unit akan dapat mempercepat

waktu kompilasi program Pascal Anda. Untuk menggunakan suatu unit, maka Anda

harus meletakkan suatu anak kalimat (clause) uses di awal blok program, diikuti oleh

daftar unit yang digunakan. Beberapa unit yang sering digunakan sebagai berikut :

  1.5.1. Unit System Unit standar system sebenarnya adalah pustaka (library) dari runtime Turbo

Pascal yang mendukung semua proses yang dibutuhkan pada waktu runtime

  (pengerjaan program).

  1.5.2. Unit Crt Unit standar crt digunakan untuk memanipulasi layar teks (windowing,

peletakan cursor di layar, Color untuk teks, kode extended keyboard dan lain

sebagainya).

  1.5.3. Unit Printer Unit standar printer merupakan unit yang sangat kecil dirancang untuk penggunaan printer di dalam program.

  1.5.4. Unit Dos Unit standar dos digunakan bilamana Anda menggunakan prosedur-rosedur

dan fungsi-fungsi standar yang berhubungan dengan DOS call, semacam GetTime,

  SetTime, DiskSize, DiskFree dan lain sebagainya.

  1.5.5. Unit Graph Unit standar graph menyediakan suatu kumpulan rutin grafik yang canggih,

  

BAB II

ELEMEN PROGRAM PASCAL

  2.1. Tipe Data Kalau Anda menggunakan pengenal variabel di dalam program, maka variabel

tersebut harus Anda deklarasikan terlebih dahulu. Pada waktu Anda mendeklarasikan

suatu variabel, maka Anda harus menentukan tipe dari datanya. Tipe data ini

menunjukkan suatu nilai yang dapat digunakan oleh variabel yang bersangkutan.

  2.1.1. Tipe Data Numerik Integer Data numerik integer merupakan nilai bilangan bulat baik dalam bentuk

desimal maupun hexadesimal. Nilai integer hexadesimal diawali dengan tanda dollar

  

($). Turbo Pascal menyediakan 5 macam tipe data integer yang masing-masing

mempunyai jangkauan nilai yang berbeda seperti pada label berikut ini.

  Ukuran Memori Tipe Jangkauan (dalam byte)

  Byte 1 0...255 Shortint 1 -128...127 Integer 2 -32768...32767 Word 2 0...65535 Longint

4 -2147483648...2147483647

  2.1.2. Tipe Data Numerik Real Nilai konstanta numerik berkisar dari 1E-38 sampai dengan 1E+38 dengan

mattisa yang signifikan sampai denga 11 digit. E menunjukkan nilai 10 pangkat. Nilai

konstanta nemerik real menempati memori sebesar 6 byte. Penggunaan tipe data real

menurut IEEE (Institute of Electrical and Electronic Engineers) seperti berikut.

  Ukuran Memori Digit Tipe Jangkauan Nilai

  (dalam byte) Signifikan Single

  

4 1.5 x 10E-45 … 3.4 x 10E38 7-8

Double 8 5.0 x 10E-324 … 1.7 x 10E308 15-16 Extended 10 1.9 x 10E-4951 … 1.1 x 10E4932 19-20 Comp 8 -2E+63+1 … 2E+63-1 19-20

  2.1.3. Tipe Data Karakter Nilai karakter berupa sebuah karakter yang ditulis diantara tanda petik tunggal,

seperti misalnya ‘A’, ‘a’, ‘!’, ‘’%’, ‘5’ dan sebagainya. Penggunaan variabel untuk

  Nilai data string merupakan urut-urutan dari karakter yang terletak di antara

tanda petik tunggal. Bila karakter yang terletak di antara tanda petik tunggal. Bila

karakter petik merupakan bagian dari konstanta string, maka dapat ditulis dengan

menggunakan dua buah petik tunggal berurutan. Nilai data string akan menempati

memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Bila panjang

dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap

panjangnya adalah 255 karakter.

  2.1.5. Tipe Data Boolean Tipe data boolean mempunyai dua buah nilai, yaitu true dan false. Anda dapat

mendeklarasikan suatu variabel dengan tipe boolean dan mengisi variabe tersebut

dengan nilai data boolean true dan false.

  program tipe_data; uses crt; var jumlah : integer; nilai1,nilai2 : real; karakter : char; kata : string; lagi : boolean; begin clrscr; jumlah := 5000; writeln('Nilai jumlah = ',jumlah); nilai1 := 12345678901.2345; nilai2 := 12345; writeln('Nilai 1 = ',nilai1); writeln('Nilai 2 = ',nilai2); karakter := 'A'; writeln('Karakter tersebut = ',karakter); kata := 'Turbo Pascal'; writeln(kata); lagi := true; writeln('Nilai Lagi = ',lagi); readln; end.

  2.1.6. Tipe Data Pointer Suatu pointer adalah suatu variabel yang berisi alamat (address) di memori

(RAM) dimana suatu data disimpan, bukannya berisi data itu sendiri. Dengan kata

lain, pointer akan menunjukkan letak dari data di memori.

  program pointer; uses crt; type tipestring = string; pointerstring = ^tipestring; var letaknama : pointerstring; begin clrscr; letaknama^ := 'Pascal'; writeln(letaknama^);

2.1.7. Tipe Data Ordinal

2.2. Tanda Operasi

  7. Address operator

  integer

  

Operator Operasi Tipe Operand Tipe Hasil

  2.2.2. Binary Operator Disebut dengan binary operator (tanda operasi biner) karena operator ini

digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk

konstanta ataupun variabel. Operator ini digunakan untuk operasi aritmatika yang

berhubungan dengan nilai tipe data integer dan real.

  2.2.1. Assignment Operator Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=)  A := B

  9. String operator

  8. Set operator

  6. Logical operator

  Tipe data ordinal adalah tipe data yang merupakan subset dari tipe data

sederhana (tipe data standar dan tipe data yang didefinisikan sendiri oleh pemakai).

Yang dimaksud denga tipe data sederhana sebenarnya adalah semua tipe data

sederhana kecuali tipe data numerik real. Jadi yang termasuk tipe data ordinal adalah :

  5. Relational operator

  4. Bitwise operator

  3. Unary operator

  2. Binary operator

  1. Assignment operator

  Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori, yaitu :

  Tipe data yang didefinisikan sendiri oleh pemakai (enumerated type dan subrange type).

   Tipe data standar (integer, shortint, longint, byte, word, boolean, dan char). 

  • Perkalian real, real integer, integer real, integer Real integer real DIV Pembagian bulat integer,integer Integer / Pembagian real real, real integer, integer real, integer Real real real MOD Modulus (sisa hasil bagi) integer, integer Integer + Pertambahan real, real integer, integer Real
real, integer real

  program binary_operator; uses crt; begin clrscr; writeln(15*5); writeln(20/3); writeln(20 div 3); writeln(20 mod 3); readln; end.

  2.2.3. Unary Operator Disebut dengan unary operator karena operator ini hanya menggunakan

sebuah operand saja. Unary operator dapat berupa unary minus dan unary plus. Unary

minus adalah operator yang berupa tanda minus yang hanya digunakan pada sebuah

numerik operand saja untuk menunjukan nilai negatif, baik pada operand numerik

real, maupun numerik integer. Unary plus adalah operator untuk memberi tanda plus.

Contoh :

  • 5
  • 7 a+(-b)
  • 2.5 a+(+b)
    • 2.5 Unary Operator

  2.2.4. Bitwise Operator

Bitwise operator digunakan untuk operasi bit per bit pada nilai integer.

Operator Operasi Tipe Operand Tipe hasil NOT bitwise negation integer integer AND bitwise AND integer,integer integer OR bitwise OR integer,integer integer

  XOR bitwise XOR integer,integer integer Shl shirt left integer,integer integer Shr shift right integer,integer integer

  program bitwise_operator; uses crt; begin clrscr; writeln(not 0); writeln(not 5); writeln(not 18); writeln(not -17); writeln(12 and 23); writeln(12 or 23); writeln(12 xor 23); end.

  2.2.5. Relational Operator Relational operator (operator hubungan) digunakan untuk membandingkan

hubungan antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu true

dan false.

  Operator Operasi = sama dengan <> tidak sama dengan > lebih besar dari >= lebih besar sama dengan dari < lebih kecil dari <= lebih kecil sama dengan dari

  IN seleksi dari anggota himpunan

  program relational_operator; uses crt; var a,b : integer; begin clrscr; a := 5; b := 3; writeln (a=b); writeln (a=5); writeln (a<>b); writeln (a>b); writeln (a>=b); writeln (a<b); writeln (a<=b); readln; end.

  2.2.6. Logical Operator Terdapat 4 buah logical operator (operator logika), yaitu not, and, or, dan

xor. Bentuk operator ini sama dengan bitwise operator, tetapi penggunaannya lain.

  Logical operator bekerja dengan nilai-nilai logika, yaitu true dan false

  program logical_operator; uses crt; begin clrscr; writeln(not true); writeln(not false); writeln(true and false); writeln(true or false); writeln(true xor false); readln; end.

  2.2.7. Address Operator

  

operator (^). Operator @ akan menghasilkan alamat dari suatu nilai variabel dan

operator ^ akan memberikan nilai di alamat yang ditunjukkan.

  program address_operator; uses crt; type tipestring = string; pointerstring = ^tipestring; var nama : tipestring; letaknama : pointerstring; begin clrscr; nama := 'Pascal'; letaknama := @nama; writeln('Nama adalah : ',nama); writeln('Nama adalah : ',letaknama^); readln; end.

  2.2.8. Set Operator

Set operator (operator himpunan) digunakan untuk operasi himpunan.

Operator Operasi Union +

  • Perbedaan himpunan Perkalian himpunan *

  2.2.9. String Operator String operator (operator string) digunakan untuk operasi string. Hanya ada

sebuah operator string saja, yaitu operator + yang digunakan untuk menggabung dua

buah nilai string.

  program string_operator; uses crt; var nama1,nama2,nama3 :string; begin clrscr; nama1 := 'Turbo'; nama2 := 'Pascal'; nama3 := nama1 + nama2; writeln(nama3); readln; end.

2.3. Komentar Program

  Untuk keperluan dokumentasi program, sehingga program mudah dibaca dan

dipahami dapat ditambahkan komentar-komentar di dalam program yang tidak akan

mempengaruhi proses dari program. Komentar program dapat diletakkan dimanapun

di dalam program. Suatu komentar program ditulis dengan pembatas { dan } atau

pembatas (* dan *)

  Statemen adalah perintah pengerjaan program. Kumpulan dari statemen

membentuk suatu program. Bila suatu program Pascal tidak mengandung statemen

atau disebut statemen kosong (empty statemen), maka tidak akan ada yang dikerjakan

oleh program. Statemen terletak dibagian deklarasi statemen dengan diawali oleh kata

cadangan begin dan ditutup dengan kata cadangan end. Masing-masing akhir dari

statemen diakhiri denga titik koma. Di dalam bahasa Pascal statemen dapat berupa

statemen dapat berupa statemen sederhana (simple statement) dan statemen

terstruktur (structured statement).

2.4.1. Statemen Sederhana

  Statemen sederhana adalah statemen yang tidak mengandung statemen yang

lainnya. Yang termasuk dengan statemen sederhana statemen pengerjaan (assignment

statement), statemen prosedur (procedure statement) dan statemen goto.

  2.4.1.1. Statemen Pengerjaan Statemen pengerjaan (assignment statement) merupakan statemen yang paling

mendasar dari semua statemen yang ada. Statemen ini digunakan untuk memasukkan

suatu nilai tertentu ke dalam suatu variabel. Bentuk dari statemen ini terdiri dari

pengenal variabel diikuti oleh operator := dan suatu ungkapan sebagai berikut :

  Pengenal-variabel := ungkapan; Contoh :

  nilai :=5; nilai :=nilai+1; D := B*B-4*A*C; lulus :=(nilai>65.5) benar := true; lolos := (kode = sandi);

  2.4.1.2. Statemen Prosedur Statemen prosedur digunakan untuk mengaktifkan suatu prosedur yang telah

didefinisikan oleh pemakai atau prosedur standar yang telah didefinisikan oleh Pascal.

  Contoh :

  cari(nama,alamat); tambah(2,3,z); urutkan(nilai); writeln(fahrenheit);

  2.4.1.3. Statemen GOTO Statemen goto diawali dengan kata goto yang diikuti oleh pengenal label.

  

Pengenal label yang dipergunakan harus sudah dideklarasikan di bagian deklarasi

label.

2.4.2. Statemen Terstruktur

  Statemen terstruktur (structured statement) merupakan statemen yang

dibentuk dari komposisi beberapa statemen. Statemen terstruktur dapat berupa

statemen jamak (compound statement), statemen penyeleksian kondisi (conditioanal

statement), Statement perulangan (repetitive statement) serta statemen with dibahas

  Statemen jamak digunakan bilamana lebih dari sebuah statemen harus

dikerjakan, sedang bentuk umum dari Pascal hanya memungkinkan sebuah statemen

saja yang disebutkan. Statemen jamak ditulis di dalam kata cadangan begin dan end

yang tersendiri. Misalnya statemen if-then hanya memungkinkan diikuti oleh sebuah

statemen saja, sebagai berikut :

  program statemen_jamak; uses crt; var nilai : real; keterangan,komentar : string; begin clrscr; nilai := 55.5; keterangan := 'Tidak Lulus'; komentar := 'Mengecewakan'; if nilai > 60 then begin keterangan := 'Lulus'; komentar := 'memuaskan'; end; writeln('Keterangan : ',keterangan); writeln('Komentar : ',komentar); readln; end.

  2.4.2.2. Statemen Penyeleksian Kondisi Statemen penyeleksian kondisi menunjukkan bahwa suatu statemen akan

dikerjakan bila suatu kondisi adalah benar. Jika kondisinya salah, maka statemen yang

lainnya atau statemen setelah kata cadangan else yang akan dikerjakan (else tidak

boleh diawali dengan titik koma, karena titik koma menunjukkan akhir dari statemen).

  Contoh :

  if kondisi1 then if kondisi2 then statemen1 else statemen2

  

Penulisan statemen diatas dapat juga dengan menggunakan blok statemen sehingga

lebih mudah terbaca, sebagai berikut :

  if kondisi1 then begin if kondisi2 then statemen1 else statemen2 end;

  

Statemen yang digunakan untuk menyeleksi kondisi selaian statemen if juga statemen

case of

  2.4.2.3. Statemen Perulangan Statemen perulangan digunakan untuk memproses statemen-statemen tertentu

berulangkali . Bila jumlah perulangannya diketahui, maka statemen for akan tepat

BAB III INPUT DAN OUTPUT

  3.1. Pendahuluan Setiap program aplikasi pasti membutuhkan operasi input dan output.

  

Memasukkan data input secara interaktif merupakan ciri dari program aplikasi yang

banyak ditemukan. Pada bab ini akan dibahas mengenai cara-cara memasukkan data

secara interaktif dan cara-cara menampilkan output.

  3.2. Memasukkan Data Turbo Pascal menyediakan prosedur standar untuk memasukkan data dengan

cara mengetikkan lewat keyboard. Turbo Pascal menyediakan prosedur untuk maksud

tersebut, yaitu read dan readln yang mempunyai aturan tertentu untuk beberapa tipe

pengenal variabel. Tiap-tiap data yang dimasukkan harus sesuai dengan tipe

variabelnya.

  Tipe Variabel Keterangan Char Memasukkan sebuah karakter, bila lebih akan terpotong, yang di anggap hanya yang pertama. String Memasukkan string maksimum sepanjang yang definisikan.

Integer Memasukkan data numerik bulat antara nilai 32767 sampai –32768

Word Memasukkan data numerik bulat diantara nilai 0 sampai dengan

  65535 Byte Memasukkan data numerik bulat diantara 0 sampai dengan 255

ShortInt Memasukkan data numerik bulat diantara nilai –128 sampai dengan

127

LongInt Memasukkan data numerik bulat diantara nilai –2147483648 sampai

dengan 2147483647

  Real Memasukkan data numerik real maksimum 30 digit dapat tanpa titik desimal Boolean Data tipe ini tidak diijinkan Contoh :

  program Masuk1(layar); uses crt; var A,B : integer; clrscr; readln(A); readln(B); readln(C); readln(D); readln(E); writeln; writeln('A = ',A,' B = ',B,' C = ',C); writeln('D = ',D); writeln('E = ',E); readln; end.

  Prosedur standar Readln untuk memasukkan data perbaris, artinya setelah

anda menekan tombol Enter, maka akan ganti baris, sedang prosedur standar Read

tidak ganti baris, masih dalam baris sama.

  3.2.1. Tampilan sewaktu memasukkan data Pada contoh program data sebelumnya, pemakai program kadangkala menjadi

bingung disebabkan tidak adanya tampilan keterangan tentang data apa yang

seharusnya dimasukkan. Supaya lebih interaktif, maka dapat ditampilkan penjelasan

tentang data yang akan dimasukkan. Untuk maksud ini sebelum prosedur standar read

atau readln dapat digunakan prosedur standar write terlebih dahulu untuk

menampilkan penjelasan tentang data yang akan dimasukkan lewat prosedur standar

read atau readln.

  Contoh :

  program masuk2(input,output); uses crt; var C,F : real; begin clrscr; write('berapa celcius = '); readln(C); F:= 1.8*C+32; writeln; writeln(C,' celcius adalah',F,' fahrenheit'); readln; end.

  3.2.2. Teknik Memasukkan Data Tipe Boolean Telah disebutkan pada tabel bahwa data tipe boolean tidak dapat di masukkan

sebagai data input. Akan tetapi hal ini dapat di atasi dengan cara memasukkan data

dengan tipe char terlebih dahulu, kemudian baru di lakukan pengerjaan boolean.

  Contoh :

  Program Masuk5(input,output); uses crt; var jawab_C : char; jawab_B : boolean; begin clrscr; readln; end.

3.3. Menampilkan Hasil

  Untuk menampilkan hasil dengan bahasa pascal digunakan prosedur standar

Write atau Writeln. Perbedaannya adalah prosedur Write menampilkan hasil tanpa

ganti baris dan tampilan beikutnya akan disambung pada baris yang sama, sedang

prosedur Writeln digunakan untuk menampilkan tampilan perbaris, akan ganti baris

untuk tampilan berikutnya.

  Contoh:

  Program tampil1(Output); uses crt; var nama : string; begin clrscr; nama := 'Dewi'; write('Nama : '); write(nama); readln; end.

  

Coba Jalankan Program di atas kemudian ganti prosedur Write dengan Writeln

kemudian jalankan kembali

3.3.1. Tampilan Default

  Merupakan tampilan yang mengikuti bentuk pengaturan default yang sudah ditentukan oleh Pascal.

  3.3.1.1. Default Tampilan Integer Tampilan nilai integer akan ditampilkan dengan bentuk :

  ddddd

  Contoh :

  Program Tampil3(output); uses crt; var bulat1,bulat2 : integer; begin clrscr; bulat1 := 123; bulat2 := 12345; writeln(Bulat1,Bulat2); readln; end.

  3.3.1.2. Default Tampilan Real Tampilan real menempati posisi lebar 18 digit dengan menggunakan bentuk

  Untuk nilai real negatif akan ditampilkan dengan bentuk :

  • d.ddddddddddEsdd

  Dengan : b = blank d = digit s = tanda (+) pangkat positif / tanda (-) pangkat negatif tanda (-) untuk biilangan negatif Contoh :

  Program Tampil4(output); uses crt; var pecahan1, pecahan2 : real; begin clrscr; pecahan1 := 123.45; pecahan2 := -123.45; writeln(Pecahan1, Pecahan2); readln; end.

  3.3.1.3. Default Tampilan Char Karakter di tampilkan tanpa mengandung blank dimuka maupun di belakang.

  Contoh :

  Program Tampil5(output); uses crt; var huruf1,huruf2: char; begin clrscr; huruf1 := 'A'; huruf2 := 'B'; Writeln(Huruf1,Huruf2); readln; end.

  3.3.1.4. Default Tampilan String Tampilan string ditunjukkan dengan panjang sesuai dengan panjang isinya, tanpa mengandung blank dimuka atau blank dibelakang.

  Contoh :

  Program Tampil6(output); uses crt; var string1, string2: String[10]; Begin clrscr; string1 := 'BASIC'; string2 := 'COBOL'; writeln(String1, String2);

3.3.1.5. Default Tampilan Boolean

  Tampilan Boolean, TRUE atau FALSE ditampilkan dengan tidak mengandung blank di muka atau belakang. Contoh :

  Program Tampil7(output); uses crt; var logika1,logika2 : boolean; Begin clrscr; logika1 := True; logika2 := False; writeln(Logika1,Logika2); readln; end.

3.3.2. Tampilan Terformat

  Walaupun bentuk default dianggap cukup untuk menampilkan bentuk pada

program yang sederhana, tetapi untuk program-program aplikasi dibutuhkan bentuk

format tertentu yang harus diatur kembali. Untuk mengatur format tampilan dengan

prosedur standar Write atau Writeln dipergunakan parameter-parameter sebagai

berikut ini

   Parameter CH:N Digunakan untuk membentuk format tampilan char selebar n karakter dengan blank di muka sebanyak n-1

   Parameter S:N

Digunakan untuk membentuk format tampilan string selebar n karakter.

  Parameter I:N

Digunakan untuk membentuk format tampilan integer selebar n digit.

   Parameter R:N Digunakan untuk membentuk format tampilan nilai numerik real selebar n digit rata sebelah kanan.

   Parameter R:N:M Digunakan untuk membentuk format tampilan nilai numerik real selebar n digit rata sebelah kanan, dengan m digit angka dibelakang koma tidak dalam bentuk eksponensial.

   Parameter B:N Digunakan untuk membentuk format tampilan nilai boolean true atau false selebar n karakter rata sebelah kanan.

  Contoh :

  Program Tampil8(Output); uses crt; var ket1,ket2 : char; karakter : string[6]; N : integer; nilai : real; logika : boolean; begin clrscr; {parameter CH:N} ket1 := 'A'; ket2 := 'B'; writeln(ket1:5,ket2:3); {parameter S:N} karakter := 'Pascal'; writeln('Bahasa :',karakter:10); {parameter I:N} N := 275; writeln('Jumlah Data =',N:5); {parameter R:N} nilai := 123.45; writeln('Nilai Real =',nilai:12); {parameter R:N:M} nilai := 123.45; writeln('Nilai Real =',nilai:12:3); {parameter B:N} logika := true; writeln('Nilai Boolean =',logika:6); readln; end.

3.3.3. Pengaturan letak di layar

  Berikut beberapa prosedur standar yang disediakan oleh pascal untuk mengatur tampilan di layar terminal. Semua prosedur menggunakan unit standar crt.

  3.3.3.1. Prosedur Clrscr Digunakan untuk membersihkan layar dari tampilan sebelumnya dan meletakkkan cursor di posisi ujung kiri atas layar.

  3.3.3.2. Prosedur GotoXY Digunakan untuk meletakkkan cursor di posisi layar yang di tunjukkan oleh

nilai XPOS dan YPOS. Nilai XPOS menunjukkan posisi sumbu X (posisi horizontal

atau posisi kolom diantara kolom 1 sampai dengan kolom 80). Nilai YPOS

menunjukkan posisi sumbu Y (posisi vertikal atau posisi baris, diantara baris 1 sampai

dengan baris 25).

  Program Tampil9(Output); uses crt; begin clrscr; gotoxy(10,15); writeln('Bahasa Pascal'); readln; end.

  3.3.3.3. Prosedur Clreol Digunakan untuk menghapus semua karakter dalam satu baris disebelah kanan posisi kursor tanpa mengubah posisi kursor.

  Program Tampil10(Output); uses crt; var nilai : integer; begin clrscr; gotoxy(10,15); write('Masukkan sebuah nilai integer ? '); readln(nilai); gotoxy(10,15); clreol; writeln('Anda Pintar'); readln; end.

  3.3.3.4. Prosedur Delay Digunakan untuk menghentikan sejenak proses program selama nilai dari

argumen tempo, yaitu dalam waktu millisecond (1/1000 detik). Nilai argumen tempo

ini harus dalam nilai integer.

  Program Tampil11(Output); uses crt; begin clrscr; writeln('5 detik lagi akan tampak tulisan menarik'); delay(5000); writeln; writeln('Anda kena tipu, ... tidak ada tulisan menarik !!!'); readln; end.

BAB IV PERULANGAN

  5.1. Pendahuluan Didalam pascal, dikenal tiga macam perulangan, yaitu dengan menggunakan statemen For,While-Do dan Repeat…Until.

  5.2. Struktur Perulangan For Perulangan dengan statemen for digunakan untuk mengulang statemen atau

blok statement berulang kali sejumlah yang ditentukan. Perulangan ini dapat

berbentuk perulangan positif, negatif dan perulangan bersarang, sintaks statemen for

adalah sebagai berikut :

  for variabel kontrol := nilai awal to nilai akhir do statemen

  atau

  for variabel kontrol := nilai awal downto nilai akhir do statemen

  5.2.1. Perulangan positif Perulangan positif adalah dengan penghitung (counter) dari kecil ke besar.

  Perulangan positif dibentuk dengan menggunakan statemen For-To-Do. Contoh :

  uses crt; var i : integer; begin clrscr; {ada begin dan end} for i:=1 to 5 do begin write(i); writeln(' Pascal'); end; {tidak ada begin dan end} for i:=1 to 5 do write(i); writeln(' Pascal'); readln; end.

  5.2.2. Perulangan negatif Perulangan negatif adalah perulangan dengan penghitung (counter) dari besar

ke kecil. Perulangan negatif. Perulangan ini dibentuk dengan menggunakan statemen

  For-DownTo-Do. uses crt; var celcius : integer; fahrenheit : real; begin clrscr; writeln('=========================='); writeln(' Celcius Fahrenheit '); writeln('--------------------------'); celcius := 0; for celcius:=15 downto 0 do begin fahrenheit := 1.8 * celcius + 32; writeln(celcius:8,Fahrenheit:14:2); end; writeln('--------------------------'); readln; end.

5.2.3. Perulangan tersarang Merupakan perulangan yang berada didalam perulangan yang lainnya.

  

Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian

perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih

dalam lagi mulai nilai awalnya dan seterusnya. Contoh :

  uses crt; var i,j : integer; begin clrscr; for i := 1 to 5 do begin for j := 1 to 3 do write(i:8,j:3); writeln; end; readln; end.

5.3. Struktur Perulangan While-Do

  Perulangan ini menggunakan statement While-Do yang memiliki sintaks sebagai berikut:

  while ungkapan logika do statemen

  

Statement while-do digunakan untuk melakukan proses perulangan suatu statemen

atau blok statemen terus-menerus selama kondisi ungkapan-logika pada while masih berlogika benar’ Contoh 1 : uses crt; var i : integer; begin clrscr; i := 0; while i < 5 do begin writeln(i); i := i + 1; end; readln; end.

  Contoh 2 :

  uses crt; var celcius, fah : real; lagi : char; begin lagi := 'Y'; while lagi = 'Y' do begin clrscr; write('Nilai Celcius = '); readln(celcius); fah := 1.8 * celcius + 32; writeln; writeln('Fahrenheit = ',fah:7:2); writeln; write('menghitung lagi (Y/T) ? '); readln(lagi); end; end.

5.3.1. Struktur perulangan While-Do bersarang

  Merupakan perulangan while-do yang satu di dalam perulangan while-do yang lainnya. Contoh :

  uses crt; var nilai,total,ratarata : real; n,i : integer; lagi : char; begin lagi := 'Y'; while lagi = 'Y' do begin clrscr; {memasukkan jumlah data} write('Jumlah data = '); readln(n); writeln; {memasukkan nilai-nilai data dan langsung dihitung nilai totalny} begin i := i + 1; write('Nilai data ke ',I,' = '); readln(nilai); total := total + nilai; end; {menghitung nilai rata-ratanya} ratarata := total/n; {menampilkan hasil} writeln; writeln('Total nilai = ',total:8:2); writeln('Jumlah data = ',n:3); writeln('Rata-rata nilai = ',ratarata:8:2); writeln; write('Akan menghitung lagi (Y/T) ? '); readln(lagi); end; end.

5.4. Struktur Repeat … Until

  Struktur repeat … until digunakan untuk mengulang (repeat) statemen-

statemen atau blok statemen sampai (until) kondisi yang di seleksi di until tidak

terpenuhi. Sintaks dari statement ini adalah sebagai berikut :

  repeat statemen until ungkapan

  Contoh :

  uses crt; var i : integer; begin clrscr; i := 0; repeat i := i + 1; writeln(i); until i = 5; readln; end.

5.4.1. Struktur perulangan Repeat … Until bersarang

  Merupakan suatu perulangan repeat … until yang satu berada dalam perulangan Repeat ... Until yang lainnya. Contoh :

  uses crt; var a,b,c : real; begin clrscr; writeln('========================'); writeln('Sisi A Sisi B Sisi C'); writeln('------------------------'); a := 1; repeat b := b + 5; until b > 25; a := a + 1; until a > 3; writeln('------------------------'); readln; end.

BAB V PENYELEKSIAN KONDISI

  5.1. Pendahuluan Untuk menyeleksi kondisi, di dalam bahasa pascal dapat di pergunakan statemen if dan statement case.

  5.2. Statemen

Struktur dari statemen if adalah if-then atau if-then-else dengan sintaks :

  if ungkapan then statemen else statemen

5.2.1. Struktur Statemen if-then

  Bentuk dari statement if-then adalah sebagai berikut :

  if ungkapan then statemen

  

Ungkapan adalah kondisi yang akan di seleksi oleh statemen if. Bila kondisi yang

diseleksi terpenuhi, maka statemen yang mengikuti then akan diproses. Sebaliknya,

bila kondisi tidak memenuhi, maka yang akan diproses adalah statemen berikutnya. Contoh 1 :

  uses crt; var nilaiujian : real; ket : string; begin clrscr; ket := 'Tidak Lulus'; write('Nilai yang didapat ? '); readln(nilaiujian); if nilaiujian > 60 then ket := 'Lulus'; writeln(ket); readln; end.

  Contoh 2 :

Dokumen yang terkait

ANALISIS DANA PIHAK KETIGA PADA PERBANKAN SYARIAH DI INDONESIA PERIODE TRIWULAN I 2002 – TRIWULAN IV 2007

40 502 17

IMPROVING CLASS VIII C STUDENTS’ LISTENING COMPREHENSION ACHIEVEMENT BY USING STORYTELLING AT SMPN I MLANDINGAN SITUBONDO IN THE 2010/2011 ACADEMIC YEAR

8 135 12

SOAL ULANGAN HARIAN IPS KELAS 2 BAB KEHIDUPAN BERTETANGGA SEMESTER 2

12 263 2

MENINGKATAN HASIL BELAJAR SISWA MELALUI MODEL PEMBELAJARAN TEMATIK DENGAN MENGGUNAKAN MEDIA REALIA DI KELAS III SD NEGERI I MATARAM KECAMATAN GADINGREJO KABUPATEN TANGGAMUS TAHUN PELAJARAN 2011/2012

21 126 83

BAB IV HASIL PENELITIAN - Pengaruh Dosis Ragi Terhadap Kualitas Fisik Tempe Berbahan Dasar Biji Cempedak (Arthocarpus champeden) Melalui Uji Organoleptik - Digital Library IAIN Palangka Raya

0 2 20

BAB I PENDAHULUAN A. Latar Belakang - Uji Kualitas Mikrobiologi Minuman Olahan Berdasarkan Metode Nilai MPN Coliform di Lingkungan Sekolah Dasar (SD) dan Madrasah Ibtidaiyah (MI) Kelurahan Pahandut Palangka Raya - Digital Library IAIN Palangka Raya

1 2 12

The effect of personal vocabulary notes on vocabulary knowledge at the seventh grade students of SMP Muhammadiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 20

BAB IV HASIL PENELITIAN - Penerapan model pembelajaran inquiry training untuk meningkatkan berpikir kritis dan hasil belajar siswa pada pokok bahasan gerak lurus - Digital Library IAIN Palangka Raya

0 1 23

CHAPTER I INTRODUCTION - The effectiveness of anagram on students’ vocabulary size at the eight grade of MTs islamiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 10

BAB II KAJIAN TEORITIK A. Penelitian Sebelumnya - Perbedaan penerapan metode iqro’ di TKQ/TPQ Al-Hakam dan TKQ/TPQ Nurul Hikmah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 26