Anda di halaman 1dari 80

HANDOUT

PEMROGRAMAN VISUAL




Oleh :


Aditya Prapanca, ST, M.Kom
NIP. 197411012003121001





JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS NEGERI SURABAYA
2013

3
I.BAHASAPEMROGRAMAN
A.SejarahPerkembanganBahasaPemrograman

Perkembanganbahasapemrogramanmungkintidaksemudahyangkitakira,namun
perkembangantersebutsangatlahsulitdanmemakanwaktuyanglamahinggabisamenjadi
bahasapemrogramanyangbisakitanikmatisekarangini.
Pembagiangenerasibahasaadalahsepertiberikut:
1. FirstGeneration Language (1GL) adalah bahasa mesin atau level instruksi dan data,
yang diberikan kepada prosesor agar dapat bekerja. Pada komputer konvensiona
terdiridarideretanangka0dan1.
2. SecondGeneration Language (2GL) adalah bahasa pemrograman assembler (orang
juga mengenalnya sebagai bahasa assembly). Pada bahasa perograman generasi
keduainiassemblermengubahpernyataanbahasapemrogramankebahasamesin.
3. ThirdGeneration Language (3GL) merupakan bahasa pemrograman yang masuk
dalamgenerasiketiga.Iniadalahbahasapemrogramantingkattinggi,sepertiPL/1,C,
atauJava.
4. FourthGenerationLanguage(4GL)adalahbahasapemrogramanyangdidesainlebih
natural, sehingga makin mudah digunakan. FifthGeneration Language (5GL)
adalah bahasa pemrograman yang menggunakan interface pengembangan visual
atau grafik untuk membuat bahasasumbernya, yang biasanya di compile dengan
compiler3GLatau4GL.

Bahasa?? Sesuai dengan pengertian sebenarnya bahwa bahasa adalah penggunaan


kode yang merupakan gabungan fonem sehingga membentuk kata dengan aturan sintaks
untuk membentuk kalimat yang memiliki arti. Bahasa digunakan sebagai alat kita untuk
saling berkomunikasi. Sama halnya dengan komputer, walaupun komputer bukan makhluk
bernyawa, namun dalam pengoperasiannya pun kita perlu untuk berkomunikasi dengan
komputertersebutgunamenyampaikanperintahperintahapasajayanginginkitalakukan.
Dan untuk member perintah tersebut kita menggunakan bahasa yang dimengerti oleh
komputertersebut.Bahasayangdimaksuddisebutdenganbahasapemrogramanan.

4
B.JenisJenisBahasaPemrograman
Jenisjenisbahasapemrogramansecaraumumdibagimenjaditigayaitu:

Bahasa Mesin adalah bahasa yang berisi kodekode mesin yang hanya dapat
diinterpretasikan langsung oleh mesin (komputer). Sering juga disebut native code
(bahasa yang sangat tergantung pada jenis mesin tertentu). Bahasa ini merupakan
bahasa tingkat terendah (Low Level Language) dan berupa kode biner: 0 dan 1.
Esekusi bahasa ini sangat cepat tapi sangat sulit pula untuk dipelajari manusia.
Contoh: untuk mesin IBM/370. Misal; 0001100000110101 = 1835 yang berarti
mengkopikanisiregister5keregister3.

Bahasa Assembly adalah bahasa simbol dari bahasa mesin. Setiap kode bahasa
mesin memiliki simbol sendiri dalam bahasa Assembly. Misalnya ADD untuk
penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lainlain.
SekumpulankodekodebahasaAssemblydapatmembentukmakroinstruksi.Bahasa
Assembly juga memiliki program pendebugnya,tidak seperti bahasa mesin.
Misalnya: Turbo Assembler dan debug di DOS. Assembler akan mencocokkan token
simboldariawals/dakhir,kemudiandikodekanmenjadibahasamesin.Eksekusinya
cepat,masihlebihmudahdipelajaridaripadabahasamesin,ukuranfilehasilsangat
kecil. Tetapi tetap kurang bersahabat untuk dipelajari (not resembles human
language)danprogramnyasangatpanjang.

Bahasa Tingkat Tinggi (High Level Language) yang lebih dekat dengan bahasa
manusia.Bahasainijugamemberikanbanyaksekalifasilitaskemudahanpembuatan
program, misalnya: variabel, tipe data, konstanta, struktur kontrol, loop, fungsi,
prosedur dan lainlain. Contoh bahasa ini: Pascal, Basic, C++, dan Java. Bahasa ini
mendukung information hiding, enkapsulasi, dan abstract data type. Bahasa tingkat
tinggi terdiri dari beberapa generasi, misalnya generasi ke3 (Pascal, C/C++) dan

5
generasi ke4 (Delphi, VB, VB.NET, Visual Foxpro). Dibandingkan bahasa mesin dan
Assembly, High Level Language lebih mudah dipelajari dan bahasanya mendekati
permasalahan yang akan dipecahkan, kode program pendek tetapi eksekusinya
menjadilebihlambat.
Pada penjelasan selanjutnya akan membahas mengenai pemrograman
visualyangnotabennyaadalahtermasukbahasapemrogramantingkattinggi.

6
II.PEMROGRAMANVISUAL
Pemrograman visual adalah metode pembuatan program dimana programmer
membuat koneksi antara objekobjek dengan cara menggambar, menunjuk,, dan mengklik
padadiagramdanikondandenganberinteraksidengandiagramalur.Jadi,programmerbisa
menciptakan program dengan cara mengklik pada ikon yang mewakili rutinrutin
pemrograman secara umum. Tujuan pemrograman visual adalah agar pemrograman
menjadi lebih mudah bagi para programmer dan lebih mudah diakses oleh kalangan
nonprogrammer dengan meminjam bahasa OOP (Object Oriented Programming), dan
mempraktikanya secara grafis atau visual. Pemrograman visual memungkinkan pengguana
untuk lebih fokus pada pemecahan masalah ketimbang cara menangani bahasa
pemrograman. Di sini Anda tidak perlu mempelajari sintaks atau menulis kode. Bahasa
pemrogramanVisualantaralainVisualBasic,VisualC++danVisualFoxpro.

A.VisualBASIC
Contoh pemrograman visual adalah Visual BASIC, bahasa pemrograman
berorientasi objek yang berbasis Windows dari Microsoft yang mengizinkan pengguna
mengembangkanaplikasiWindowsdanOfficedengan:
(1)membuattombolperintah,kotakteks,jendeladantoolbar,
(2)selanjutnyaakandilinkkeprogramBASICyangkecilyangmelakukantindakantertentu.
Visual BASIC merupakan evendriven, artinya program menunggu pengguna melakukan
sesuatu(event),sepertiklikpadaikon,dankemudianprogramakanmerespons.Misalnya
, pada permulaan pengguna dapat menggunakan piranti geser dan turunkan (dragand
drop) untuk mengembangkan antar muka pengguna grafis yang dibuaat secara otomatis
oleh program. Karen penggunaanya mudah, Visual BASIC memungkinkan programmer
pemulauntukmencipatakanaplikasiaplikasiberbasiswindowsyangmenarik.
Sejak diluncurkan pada 1990, pendekatan Visual Basic menjadi norma untuk
bahasa pemrograman. Sekarang ada banyak lingkungan visual untuk banyak bahasa
pemrograman termasuk C, C++, Pascal, dan Java. Visual BASIC terkadang disebut rapid

7
application development (RAD) karena memungkinkan programmer membuat aplikasi
prototypedengancepat.
Visual Basic adalah salah satu bahasa pemrograman tingkat tinggi (High Level
Language)dimanabahasanyalebihdekatdanmudahdimengertiolehmanusia.VisualBasic
yang dikembangkan oleh Microsoft sejak tahun 1991, merupakan pengembangan dari
pendahulunya yaitu bahasa pemrograman BASIC (Beginners Allpurpose Symbolic
InstructionCode)yangdikembangkanpadaera1950an.VisualBasicmerupakansalahsatu
bahasapemrogramankomputeryangmendukungobyek.
Sehingga dapat disimpulkan bahwa Visual Basic merupakan salah satu
Development Tool yaitu alat bantu untuk membuat berbagai macam program komputer,
khususnya yang menggunakan sistem operasi Windows. Visual Basic juga memberikan
banyak sekali fasilitas kemudahan pembuatan program, misalnya: variabel, tipe data,
konstanta, struktur kontrol, loop, fungsi, prosedur dan lainlain. Sesuai dengan
perkembangantehnologidankebutuhankomputingsaatinibahasainiterusdikembangkan
kemapuannya.

B.VisualC++
Visual C++ adalah bahasa pemrograman C++ versi Microsoft. Didasarkan pada
bahasaC,C++adalahversipembaharuandariCyangmengambilbahasaCkeevolusibahasa
pemrogramanarasberikutnyayangmenyediakanpemrogramanberorientasiobjek.
Visual C++ adalah bahasa yang dikompilasi. Sebuah compiler C++ (bahasa
pemrograman C++ yang merupakan bagian dari Visual C++ kita) mengambil instruksi
instruksi bahasa C++ dan menterjemahkannya ke dalam format yang dapat dibaca
komputer. Kompiler C++ adalah perangkat yang digunakan komputer untuk memahami
instruksiinstruksibahasaC++didalamprogramAnda.MicrosoftVisualC++datangbersama
editor miliknya dan lingkungan pemrograman terpadu yang membuat pemrograman
menjadimudahdikelola.

8
Setelah Anda menulis kode Visual C++, Anda menjalankannya melalui Visual C++,
menghasilkaninstruksiyangterkompilasidenganbenardanmenjalankanprogramtersebut.
Sebuah praprosesor membaca pengarah praprosesor program untuk mengontrol
pengkompilasian. Perhatikan bahwa program Visual C++ Anda harus dilewatkan melalui
praprosesor sebelum program dikompilasi. Praprosesor membaca simbolsimbol khusus di
dalam kode yang disebut pengarah praprosesor yang Anda masukkan di dalam program,
untuk mengontrol pengkompilasian program. Visual C++ dengan sendirinya membentuk
langkah praprosesor, sehingga tidak perlu pemahaman tambahan bagi Anda selain
meletakkan pengarah praprosesor ke dalam programprogram Anda. Program Anda harus
melalui tahapan terakhir setelah pengkompilasian dan sebelum pengeksekusian. Tahapan
inidisebuttahapanlinkingataulinkediting.PadasaatprogramAndadilink,programyang
disebut linker memasok informasi yang diperlukan saat pengeksekusian ke program yang
dikompilasi.

C.VisualFoxPro
Visual FoxPro adalah bahasa pemrograman Pemrograman berorientasi objek dan
pemrogramanproseduraldariMicrosoft.Awalnyabahasapemrogramaninidikenaldengan
nama FoxBASE yang diluncurkan oleh Fox Software pada awal 1984. Fox Technologies
kemudian bergabung dengan Microsoft pada 1992 sehingga di depan nama FoxBASE
ditambahkanawalan"Visual".
Versi terakhir FoxPro (9.0) dapat berjalan pada sistem operasi Mac OS, DOS,
Windows, dan Unix. Visual FoxPro 3.0, versi "Visual" pertama, akhirnya tersingkir karena
hanyamendukungMacOSdanWindows,danversiberikutnyahanyamendukungWindows
saja. Versi terkini Visual FoxPro adalah berdasarkan teknologi Component Object Model
COM dan Microsoft telah menyatakan bahawa mereka tidak berniat untuk mencipta versi
Microsoft.NET.



Page1


1 Modul 1-Pengenalan Pascal
MODUL 1
PENGENALAN PASCAL

1.1 Sejarah Perkembangan Pascal
Pascal adalah bahasa tingkat tinggi (high level language) yang
orientasinya pada segala tujuan, dirancang oleh Professor Niklaus Wirth dari
Technical University di Zurich, Switzertland. Nama PASCAL diambil dari nama
seorang ahli matematika dan philosophi terkenal abad 17 dari Perancis.
Profesor 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 pemograman yang
terstruktur (structured programming). J adi Pascal adalah bahasa yang ditujukan
untuk membuat program terstruktur.
Dalam waktu yang singkat, Pascal telah menjadi bahasa yang paling
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 yang
lainnya.

1.2 Tahapan dalam Pemrograman
Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam
pemrograman dengan komputer adalah:
1. Defenisikan Masalah
a. Tentukan apa yang menjadi masalah
b. Tentukan data input yang diperlukan
c. Tentukan output yang diinginkan
2. Buat bagan dan struktur cara penyelesaian
a. Bagan secara global
b. Deskripsikan tugas masing-masing subprogram
3. Pilih Metode Penyelesaian
a. Pilih struktur data dan Algoritma terbaik



Page2


2 Modul 1-Pengenalan Pascal
4. Pengkodean
a. Pilih bahasa pemrograman yang sesuai
b. Menterjemahkan algoritma ke bahasa pemrograman
5. Mencari Kesalahan
a. Kesalahan sintaks (penulisan program)
b. Kesalahan Pelaksanaan: Semantik, Logika, dan ketelitian
6. Uji dan Verifikasi Program
7. Dokumentasi Program
8. Pemiliharaan Program
a. Memperbaiki kekurangan yang ditemukan kemudian
b. Memodifikasi, karena perubahan spesifikasi

1.2 Struktur Program Dalam Pascal
Struktur dari suatu program Pascal terdiri dari sebuah judul program (program
heading) dan suatu blok program (program block) atau badan program (body
program). Blok program dibagi dua yaitu bagian deklarasi (declaration part) dan
bagian pernyataan (statement part). Bagian deklarasi dapat terdiri dari deklarasi
label (labels declaration), deklarasi konstanta (constants declaration), deklarasi
tipe (type declaration), deklarasi varioabel (variabels declaration), deklarasi
prosedur (procedures declaration) dan deklarasi fungsi (function declaration).
Secara ringkas, struktur program Pascal terdiri dari:
1. J udul Program
2. Blok Program
a. Bagian deklarasi
- Deklarasi label
- Definisi konstanta
- Deinisi tipe
- Deklarasi variabel
- Deklarasi prosedur
- Deklarasi fungsi







Page3


3 Modul 1-Pengenalan Pascal
b. Bagian pernyataan











Berikut ini kerangka umum program yang terdapat di dalam bahasa pascal.







Judul Program
Biasanya sama dengan nama program.
Penulisan judul program:
1. terdapat pada awal pembuatan program
2. nama program diketik tanpa adanya spasi
3. diakhiri dengan tanda titik koma ( ; )

Contoh:
Pr ogr amPer t amaku;
atau
Pr ogr amPer t ama_ku;


Pr ogr am<j udul pr ogr am>
Uses <daf t ar uni t >
<bagi an dekl ar asi >
Begi n
<bagi an per nyat aan>
End.

J udul program



Bagian deklarasi
Bagian pernyataan


Page4


4 Modul 1-Pengenalan Pascal
Daftar Unit
Berisi daftar unit yang akan digunakan di dalam program. Unit merupakan suatu
modul program yang terpisah dan digunakan untuk menyimpan proses-proses
tertentu yang berkaitan. Biasanya unit dibuat untuk program yang cukup besar
sehingga program dapat lebih bersifat modular dan mudah untuk dibaca. Pada
contoh dibawah kita menggunakan statemen uses cr t ; dan uses wi ncr t ;
yang artinya kita menggunakan suatu unit yang bernama cr t atau wi ncr t , yaitu
unit yang berisi kumpulan rutin (berupa prosedur maupun fungsi) yang berkaitan
dengan pengontrolan PC, yang meliputi layar, keyboard, warna dan juga suara.
Karena kita sudah mendaftarkan unit tersebut dalam program yang kita tulis,
maka kita diperbolehkan untuk menggunakan semua rutin-rutin yang terdapat di
dalam unit tersebut. Misalnya rutin cl r scr yang berfungsi untuk membersihkan
layar.
Contoh: uses Crt;
uses WinCrt;

Bagian Deklarasi
bagian deklarasi digunakan jika di dalam program menggunakan pengenal
(identifier). Macam-macam deklarasi :
- deklarasi tipe data
- deklarasi konstanta
- deklarasi variable
- deklarasi prosedur
- deklarasi fungsi
- deklarasi label
Pengenal (identifier) yang didefinisikan sendiri bebas, tetapi dengan ketentuan-
ketentuan sebagai berikut:
1. terdiri dai gabungan huruf dan angka dengan karakter pertama harus
berupa huruf.
2. tidak boleh mengandung spasi
3. tidak boleh mengandung simbol-simbol khusus kecuali garis bawah ( _ ).
4. panjangnya bebas tapi 63 karakter pertama yang dianggap signifikan





Page5


5 Modul 1-Pengenalan Pascal
contoh :
(deklarasi tipe data)
Type
Lar i k = ar r ay[ 1. . 100] of i nt eger ;
(deklarasi konstanta)
Const
N = 100;

(deklarasi variable)
Var
Nama : st r i ng;
X : i nt eger ;

(deklarasi prosedur)
Pr ocedur e Tul i s( s : st r i ng) ;
Begi n
Wr i t el n( s) ;
End;

(deklarasi fungsi)
Funct i on Kuadr at ( a : i nt eger ) : i nt eger ;
Begi n
Kuadr at : = a * a;
End;

(deklarasi label)
Label BARI S;

Bagian Pernyataan
Merupakan perintah-perintah yang akan dituliskan. Statemen-statemen ini harus
berada di dalam blok begin end. Masing-masing akhir statemen diakhiri dengan
titik koma ( ; ).





Page6


6 Modul 1-Pengenalan Pascal
Contoh:
begin
Wr i t el n( ' Sel amat dat ang di duni a Pascal ) ;
end.
J adi program secara keseluruhan adalh sebagai berikut:







Tampilan di layar setelang di running:


Mengenal Prosedur Writeln dan Readln
Dalam bahasa pascal, prosedur yang digunakan untuk melakukan
penulisan adalah Wr i t e dan Wr i t el n. Perbedaan dari kedua buah prosedur ini
hanyalah terdapat pada posisi kursornya. Pada prosedur Wr i t e kursor akan
berada di belakang teks yang dituliskan. Sedangkan pada prosedur Wr i t el n,
setelah menuliskan teks makan posisi kursor akan dipindahkan ke baris
berikutnya. Selanjutnya untuk proses pembacaan, bahas Pascal memiliki
prosedur Read, Readl n dan ReadKey. Namun prosedur yang sering digunakan
adalah Readln.
Contoh Program






program Pertama;
uses
wi nCr t ;
begin
Wr i t el n( ' Sel amat dat ang di duni a Pascal ) ;
end.
pr ogr ampenj uml ahan_l angsung;
uses wi ncr t ;
var
Luas, p, l : i nt eger ;
begi n
p: =20;
l : =25;
Luas: =p*l ;
wr i t el n( J adi Luas=' , Luas) ;
end.



Page7


7 Modul 1-Pengenalan Pascal
Output



LATIHAN 1

1. SEMPURNAKAN PROGRAM DIBAWAH INI !

pr ogr ammenghi t ung_j ar ak
uses wi ncr t
var
X1, X2, Y1, Y2: i nt eger
d r eal
begi n
wr i t el n( pr ogr ammenghi t ung j ar ak t i t i k A dan B)
wr i t el n( ======================================)
wr i t el n
wr i t e( Masukkan Ni l ai A ( X1) : ) r eadl n ( X1)
wr i t e( Masukkan Ni l ai B ( X2) : ) r eadl n ( X2)
wr i t e( Masukkan Ni l ai A ( Y1) : ) r eadl n ( Y1)
wr i t e( Masukkan Ni l ai B ( Y2) : ) r eadl n ( Y2)
d: =sqr t ( sqr ( X2- X1) + sqr ( y2- y1) )


Page8


8 Modul 1-Pengenalan Pascal
wr i t el n
wr i t el n( j adi j ar ak t i t i k A ke t i t i k B adal ah :
d: 0: 2)
end
2. BUATLAH PROGRAM YG MEMINTA USER UNTUK MEMASUKKAN
NAMANYA DAN BERI SALAM KEPADA USER TSB. OUTPUTNYA
ADALAH SEBAGAI BERIKUT:














MASUKKAN NAMA ANDA :
HALLO,, APA KABAR?
MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


1
MODUL II
ELEMEN DASAR PASCAL
KOMENTAR PROGRAM
Komentar program merupakan bagian program yang tidak ikut dieksekusi sehingga
kehadirannya tidak mempengaruhi jalannya program.
Pada umumnya bahasa Pascal hanya mendukung dua macam cara untuk membuat
komentar program, yaitu:
1. Menggunakan tanda (*...*)
Komentar ini dapat digunakan untuk menuliskan komentar yang banyaknya lebih dari
satu baris.
Contoh
( * I ni adal ah koment ar pr ogr amyang banyaknya sat u bar i s*)
( * I ni j uga mer upakan koment ar pr ogr am dengan banyak bar i s
l ebi h dar i sat u*)
2. Menggunakan tanda {...}
Komentar ini lebih sering digunakan oleh para programmer Pascal karena lebih
singkat dan sedrhana.
Contoh:
{ I ni adal ah koment ar pr ogr amyang banyaknya sat u bar i s}
{ I ni j uga mer upakan koment ar pr ogr amdengan banyak bar i s
l ebi h dar i sat u}
contoh:












pr ogr amkoment ar ;
uses wi ncr t ;
begi n
cl r scr ;
{i ni adal ah koment ar dan t i dak akan di eksekusi ol eh
pr ogr am}
wr i t el n( ' mencoba menul i skan koment ar pr ogr am' ) ;
{i ni ( *j uga*) koment ar sehi ngga t i dak akan di t ampi l kan di
dal amhasi l kel uar an}
r eadl n;
end.
MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


2
Bila program dijalankan maka didapatkan output:
mencoba menul i skan koment ar pr ogr am

Dari output yang dihasilkan ini membuktikan bahwa kehadiran komentar tidak
berpengaruh terhadap program.


VARIABEL
Variabel adalah suatu pengenal yang didefinisikan oleh programmer untuk
menyimpan nilai atau data tertentu yang dibutuhkan dalam program pada saat program
sedang berjalan (run-time). Dengan demikian nilai tersebut juga dapat kita ubah sesuai
dengan kebutuhan program.
Bentuk umum pendeklarasian variabel:
Var
NamaVariabel : t i pe_dat a;
Contoh:
Var
x : i nt eger ; {Variabel x dengan tipe integer}
Nama : st r i ng[ 25] ; {variabel Nama dengan tipe string}
x, y, z : i nt eger ; {variabel x,y, dan z degan tipe integer}

Adapun aturan-aturan penamaan variabel dalam Pascal adalah sebagai berikut:
1. Tidak boleh mengandung spasi, simbol atau tanda.
Contoh:
Nama Lengkap : st r i ng; {SALAH karena mengandung spasi}
@mai l ?! : st r i ng; {SALAH karena mengandung simbol}
2. Tidak boleh diawali dengan angka
Contoh:
2Di mensi : Tpoi nt ; {Anggap Tpoint record buatan}
3. Tidak boleh menggunakan kata kunci yang sudah terdapat di dalam bahasa Pascal.
Contoh:
For : i nt eger ; {Menggunakan kata kunci for}
Whi l e : bool ean; {menggunakan kata kunci while}
MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


3
Contoh program penggunaan variabel didalam program:















Bila program dijalankan maka didapatkan output:
Masukkan sebuah bi l angan : 4
4^3 = 64

Berdasarkan ruang lingkupnya, variabel dibedakan menjadi dua yaitu:
1. Variabel Global
Artinya variabel tersebut dideklarasikan diluar blok atau rutin-rutin (prosedur atau
fungsi) tertentu. Sehingga variabel global dapat dikenali oleh semua prosedur yang
terdapat dalam program atau unit bersangkutan.
Contoh:
Pr ogr amLat Var Gl obal ;
Uses wi ncr t ;
Var
Var Gl obal : i nt eger ;

{mendefinisikan prosedur}
Pr ocedur e Pr oc1;
Begi n
Pr ogr amLat Var 2;
uses wi ncr t ;
var
bi l angan: i nt eger ;
hasi l : l ongi nt ;
begi n
cl r scr ;
wr i t e( ' Masukkan sebuah bi l angan: ' ) ;
r eadl n( bi l angan) ;
hasi l : =bi l angan*bi l angan*bi l angan;
wr i t e( bi l angan, ' ^3= ' , hasi l ) ;
r eadl n;
end.
MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


4
. . . .
End;
{mendefinisikan fungsi}
Funct i on Func1: i nt eger ;
Begi n
. . . . . . .
End;

{pogram utama}
Begi n
. . . . .
End.

Pada kode program di atas, Var Gl obal merupakan variabel yang bersifat global
sehingga akan dikenali oleh setiap bagian program, baik prosedur Pr oc1, fungsi
Func1 maupun oleh program utama.
2. Variabel Lokal
Artinya variabel yang dideklarasikan di dalam suatu rutin tertentu sehingga hanya
dikenali oleh rutin yang bersangkutan saja.
Contoh:
Funct i on Func1: i nt eger ;
Var
Var Lokal : i nt eger ;
Begi n
. . . . . . . . .
End;

Pada kode di atas, variabel VarLokal merupakan variabel bertipe integer yang sifatnya
lokal dan hanya dikenal fungsi Func1 saja.





MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


5

Konstanta
Didalam pembuatan program sering kali kita perlu untuk mendefinisikan konstanta
atau tetapan, dimana nilainya tidak dapat diubah selama program sedang berjalan. Hal ini
tentu berbeda dengan variabel yang nilainya dapat diubah kapan saja sesuai kebutuhan
program. Dalam bahasa Pascal pembuatan konstanta menggunakan kata kunci const .
Bentuk umum pendeklarasian konstanta:
const
NamaKonstanta1 =ni l ai _konst ant a1;
NamaKonstanta2 =ni l ai _konst ant a2;
......

Contoh:
const
MYPI = 3. 1416;
MAX_RECORD = 100;
PENERBI T = CV I NFORMATI KA BANDUNG ;

Contoh program yang tidak menggunakan konstanta
pr ogr amt anpakons;
uses wi ncr t ;
var
A : ar r ay [ 1. . 5] of i nt eger ;
i : i nt eger ;
begi n
cl r scr ;
f or i : =1 t o 5 do
A[ i ] : = i * 5;
f or i : =1 t o 5 do
wr i t el n( ' A[ ' , i , ' ] = ' , A[ i ] ) ;
r eadl n;
end.


MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


6
Bila program dijalankan maka didapatkan output:
A[ 1] = 10
A[ 2] = 20
A[ 3] = 30
A[ 4] = 40
A[ 5] = 50

Contoh program yang menggunakan konstanta
pr ogr ammenggunakankons;
uses wi ncr t ;
const
MAX=10;
var
A : ar r ay [ 1. . MAX] of i nt eger ;
i : i nt eger ;
begi n
cl r scr ;
f or i : =1 t o MAX do
A[ i ] : = i * 10;
f or i : =1 t o MAX do
wr i t el n( ' A[ ' , i , ' ] = ' , A[ i ] ) ;
r eadl n;
end.











MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


7

LATIHAN 2
1. Buatlah sebuah program untuk menentukan keliling dan luas lingkaran dengan
menambahkan definisi konstanta. Berikut adalah outputnya














2. Buatlah sebuah program untuk melakukan konversi suhu Fahrenheit ke Celcius !
Sebagai catatan, suhu dalam Fahrenheit di input oleh user. Berikut adalah
outputnya

















MODULIIElemenDasarPascal

Dasar Pemrograman Pascal


8






















ModulIIITipeData

DasarPemrogramanUMB Page1

MODULIII
TIPEDATA

Jenis/TipeData
Pada waktu sebuah variabel dideklarasikan maka tipenya sekaligus ditentukan. Tipe dari suatu
variabelmenyatakan:
a. Jenis nilai yang dapat disimpan dalam lokasi memori untuk variabel tersebut, (membatasi
himpunannilainilaiyangdapatdipunyaivariabeltersebut)
b.Jenisoperasiyangdapatdilakukanterhadapvariabelyangbersangkutan.

TipeDasar
Merupakantipetipeyangtelahdidefinisikanolehkompilersehinggakitatinggalmenggunakan
saja.Tipedasardibagidalamlimabagianyaitu:
1. TipeBilanganBulat
Merupakantipeordinal(memilikiurutan).Yangtermasukdalamtipebilanganbulat
dalampascaladalah:

TipeData UkurandalamByte RentangNilai


ShortInt 1 128..127
Integer 2 327.68..32.767
Longint 4 2.147.483.648..
2.147.483.647
Byte 1 0..255
Word 2 0..65.535

2. TipeBilanganRiil
Merupakantipedatauntukmerepresentasikanbilanganbilanganriil(floatingpoint).
Tipedatayangtermasukkedalamtipebilanganriiladalah:

ModulIIITipeData

DasarPemrogramanUMB Page2

TipeData Ukuran(Byte) RentangNilai
Real 6 2.9x10
39
sampai1.7x10
38

Single 4 1.5x10
45
sampai3.4x10
38

Double 8 5.0x10
324
sampai1.7x10
308

Extended 10 3.4x10
4932
sampai1.1x10
4932

Comp 8 9.2x10
18
sampai9.2x10
18

3. TipeKarakter
Digunakanuntukmerepresentasikannilainilaiyangbertipekarakter.Contoh
pendeklarasianvariabelyangbertipekarakter.
Var
Karakter_angka:char;
Huruf:char;
Sedangkanuntukprosesmemasukkannilaikedalamvariabeltersebutadalahdengan
sebagaiberikut:
Begin
Karakter_angka:=1;
Huruf:=A;

End.

4. TipeString
Merupakankumpulandarikarakteryangterangkaimenjadisatukataataupunkalimat.
MisalPemrogramanPascal,Informatika,dansebagainya.Contohpendeklarasian
variabelyangbertipestring:
Var
Nama:string{mengalokasikanruanguntuk256karakter}
Nama:string[10]{mengalokasikanruanguntuk10karakter}

ModulIIITipeData

DasarPemrogramanUMB Page3

5. TipeLogika
Merupakantipeyanghanyamemilikiduabuahnilaiyaitubenardansalah.Dalampascal
untukmendefinisikandatadatalogikdisediakantipeboolean.

OPERATORDALAMPASCAL
Dalam menulis program kita tidak mungkin terlepas dari penggunaan operator. Operator
sendiri didefinisikan sebagai sesuatu yang digunakan untuk melakukan operasioperasi
tertentu,misalnyaoperasiaritmatika,penggabunganstringdanbanyaklagiyanglainnya.

OperatorAssignment
Operator assignment digunakan untuk melakukan pemberian nilai terhadap suatu variabel
sehingga operator ini juga sering dikenal dengan operator penugasan. Dalam bahasa Pascal
operatoryangdigunakanuntukmelakukanhaliniadalahoperator:=.Berikutinibentukumum
untukmelakukanpemberiannilaiterhadapsuatuvariabel.

NamaVariabel:=nilai_yang_akan_dimasukkan;

Contoh:
Var
x:integer;
y:real;
str:string;
Begin
x:=123;
y:=56.04;
str:=Mencobamemasukkannilaikedalamvariabel;
....
End.
ModulIIITipeData

DasarPemrogramanUMB Page4

Contohprogramyangmenggunakanoperatorassignment:

Bilaprogramdijalankanmakadidapatkanoutput:
Nilaixmulamula:10
Nilaixsetelahditambah20:30
Nilaixsetelahdikurangi5:25

OperatorAritmatika
Bahasa Pascal menyediakan beberapa operator yang dapat digunakan dalam operasi
aritmatika,sepertipenjumlahan,pengurangan,perkalian,pembagiandanpenentuansisabagi.
Operator JenisOperasi TipeOperand TipeHasil Contoh
+ Penjumlahan Integer,real Integer,real a+b
Pengurangan Integer,real Integer,real x1
* Perkalian Integer,real Integer,real a*b
/ Pembagianuntuk
bilanganriil
Integer,real real 5/3
div Pembagianuntuk
bilanganbulat
Integer Integer 10div4
mod Sisabagi integer integer 10mod3
pr ogr amoper at or penugasan;
uses wi ncr t ;
var
x : i nt eger ;
begi n
cl r scr ;
x : = 10;
wr i t el n( ' Ni l ai x mul a- mul a : ' , x) ;
x : = x + 20;
wr i t el n( ' Ni l ai x set el ah di t ambah 20 : ' , x) ;
x : = x- 5;
wr i t el n( ' Ni l ai x set el ah di kur angi 5 : ' , x) ;
r eadl n;
end.
ModulIIITipeData

DasarPemrogramanUMB Page5

OperatorLogika
Operatorlogikadigunakanuntukmelakukanoperasioperasiyangmenghasilkannilailogik(true
danfalse).Bahasapascalmenyediakan4buahoperatorlogika,yaitu:
Operator JenisOperasi TipeOperand TipeHasil Contoh
not Negasi boolean boolean not(x=y)
and Conjunction boolean boolean (x>1)and(x<=5)
or Disjunction boolean boolean (x<1)or(x>5)
xor Exlusive
disjunction
boolean boolean AxorB

OperatorRelasional
Operator relasional adalah operator yang digunakan untuk menentukan relasi atau hubungan
dariduabuahnilaiatauoperand.Operatoriniterdapatdalamsebuahekspresiyangselanjutnya
akan menentukan benar atau tidaknya ekspresi tersebut. Operator relasional biasanya
digunakanuntukmelakukanpengecekankondisidalamblokpemilihan.Adapunyangtermasuk
kedalamoperasionaldidalambahasaPascaladalahsebagaiberikut:
Operator JenisOperasi TipeOperand TipeHasil Contoh
= Samadengan Tipedasar,string,
Pchar,set
boolean A=3
<> Tidaksama
dengan
Tipedasar,string,
Pchar,set
boolean A<>3
< Lebihkecil Tipedasar,string,
Pchar
boolean A<1
> Lebihbesar Tipedasar,string,
Pchar
boolean A>5
<= Lebihkecilatau
samadengan
Tipedasar,string,
Pchar,set
boolean A<=B
>= Lebihbesaratau
samadengan
Tipedasar,string,
Pchar,set
boolean A>=B
ModulIIITipeData

DasarPemrogramanUMB Page6

Latihan
1. Buatlahprogramygmemintauseruntukmemasukkannamadanberisalamdengan
memanggilkembaliinputanyangtaditelahdimasukkan.Outputnyaadalahsebagaiberikut:

2.Buatlahprogramkasirsederhanasepertidibawahini!

Masukkan nama anda :


Hal l o, , apa kabar ?
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page1

MODUL IV
PEMILIHAN (STATEMEN IF)

Dalam pemograman, secara umum statemen dapat didefinisikan sebagai suatu bagian program
yang dapat dieksekusi. Secara garis besar, statemen didalam bahasa Pascal dapat
dikategorikan ke dalam beberapa kelompok, yaitu sebagai berikut:
Penugasan (assignment)
Pemilihan
Iterasi atau pengulangan
Peloncatan
Pendefinisian label
Ekpsresi atau ungkapan

Pemilihan, iterasi dan peloncatan merupakan statemen yang digunakan untk melakukan control
program. Label berguna untuk membantu dalam statemen peloncatan, khususnya untuk
menggunakan statemen goto. Sedangkan ekspresi digunakan untuk menyatakan nilai logika
yang pada umumnya terdapat dalam pengkodisian.

4.1 Statemen Penugasan
Statemen penugasan merupakan proses memberikan atau memasukkan nilai ke dalam suatu
variabel. Operator = didalam bahasa pemograman lain (seperti C, C++, J ava) digunakan
sebagai operator penugasan, namun dalam bahasa Pascal operator tersebut digunakan
sebagai operator relasional dalam proses pengkodisian. Sedangkan untuk melakukan
penugasan digunakan operator :=.
Contoh statemen penugasan didalam bahasa Pascal:
x : = 10; {memasukkan nilai 10 kedalam variabel}
j uml ah : = j uml ah + 1; {menaikkan nilai variabel jumlah sebesar 1}
st r : = Pascal ; {memasukkan string Pascal ke dalam variabel str}

4.2 Pemilihan
Blok pemilihan merupakan blok kontrol yang digunakan untuk memilih statemen atau aksi-aksi
yang akan dilakukan, dimana pemilihan tersebut didasarkan atas nilai dari kondisi-kondisi
tertentu. Suatu aksi akan dikerjakan atau dieksekusi oleh program apabila kondisi yang
didefinisikan untuk aksi tersebut bernilai benar (true). Sebaliknya, bila kondisi tidak terpenuhi
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page2

atau salah (false) maka program akan melakukan aksi lain (bila ada) atau langsung keluar dari
blok pemilihan. Dalam bahasa Pascal, blok pemilihan dapat didefinisikan dengan 2 cara, yaitu
dengan menggunakan statemen i f atau case.

4.2.1 Statemen if
Statemen i f akan diikuti oleh ekspresi (sebagai kondisi yang akan diperiksa) dan selalu
berpasangan dengan kata kunci t hen.

4.2.1.1 Satu Kasus
Statemen if dengan satu kasus merupakan bentuk yang paling sederhana karena hanya
melibatkan satu kondisi yang akan diperiksa. Apabila kondisi yang diperiksa bernilai benar,
maka program akan mengeksekusi bagian yang berada didalam blok. Bila sebaliknya, program
akan mengabaikan statemen di dalam blok dan akan langsung melanjutkan eksekusi ke
statemen-statemen berikutnya yang berada dibawah blok pemilihan. Berikut ini gambar yang
dapat menunjukkan proses logik yang terjadi pada statemen if yang memiliki satu kasus.




















masuk
kondi si
St at emen di
dal ambl ok
kont r ol
kel uar
benar
salah
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page3

Adapun bentuk umum statemen if satu kasus yaitu:













Bila program dijalankan maka didapatkan output:
Masukkan sebuah bi l angan bul at : 17
17 l ebi h besar dar i 10

Statemen
wr i t el n( x, ' l ebi h besar dar i 10' ) ;
hanya akan dilakukan apabila nilai x yang dimasukkan oleh user lebih besar dari 10. artinya
apabila user memasukkan nilai lebih kecil atau sama dengan 10, maka statemen tersebut akan
diabaikan.

{apabi l a hanya t er di r i dar i sat u st at emen}
if ( ekspr esi ) then
st at emen ;

{apabi l a t er di r i at as beber apa st at emen}
if ( ekspr esi ) then
st at emen ;
st at emen ;
.
end;
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page4

4.2.1.2 Dua Kasus
Statemen if yang melibatkan dua kasus merupakan perluasan dari statemen if satu kasus. Pada
bentuk pemilihan ini terdapat statemen tambahan yang digunakan untuk mengatasi kejadian
pada saat kondisi yang didefinisikan bernilai salah atau tidak terpenuhi. Berikut ini gambar yang
dapat mengilustrasikan proses logik dari statemen i f dua kasus:





salah

benar








Dari gambar diatas jelas terlihat bahwa terdapat statemen alternatif yang akan dieksekusi
apabila kondisi yang didefinisikan bernilai salah. Untuk mendefinisikan blok pemilihan jenis ini,
kita harus menggunakan kata kunci else.
Bentuk umum pendefinisiannya:




Apabila kondisi bernilai benar ( t r ue) , maka yang akan dilakukan adalah statemen pertama.
Sebaliknya, apabila salah ( f al se) maka yang akan dilakukan adalah statemen kedua, yaitu
statemen yang terdapat pada bagian el se.
Bentuk umum tersebut berlaku apabila kita hanya memiliki satu baris statemen yang akan
dilakukan. Satu hal lagi yang perlu diperhatikan yaitu statemen pertama (sebelum kata kunci
masuk
kondisi
Statemen jika
kondisi
terpenuhi
keluar
Statemen jika
kondisi tidak
terpenuhi
i f ( kondi si ) t hen
St at emen_j i ka_kondi si _benar {I NGAT, t i dak di akhi r i ; }
el se
St at emen j i ka kondi si sal ah ;
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page5

(el se) tidak boleh diakhiri oleh titik koma (;). Apabila ingin menempatkan titik koma, maka
harus menempatkan statemen tersebut ke dalam sebuah blok (begin...end). hal tersebut juga
berlaku apabila statemen lebih dari satu baris, seperti yang ditunjukkan dibawah ini:








Bila program dijalankan maka didapatkan output:
Masukkan sebuah bi l angan bul at : 4
4 mer upakan bi l angan GENAP
Atau
Masukkan sebuah bi l angan bul at : 9
9 mer upakan bi l angan GANJ I L



i f ( kondi si ) t hen
begin
St at emen_j i ka_kondi si _benar ; {di akhi r i t i t i k koma}
end
el se
St at emen_j i ka_kondi si _sal ah ;
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page6


4.2.1.3. Tiga Kasus atau Lebih
Bentuk ini merupakan bentuk pemilihan yang sedikit kompleks, karena memiliki tiga
buah atau lebih kasus sehingga akan terdapat statemen if di dalam if lainnya, yang sering
dikenal dengan if bersarang (nested-if). Berikut ini gambar yang dapat mengilustrasikan proses
logik yang terjadi di dalam statemen if yang memiliki tiga kasus atau lebih.







salah salah salah
benar benar

benar








Dari gambar tersebut tampak bahwa apabila kondisi pertama tidak terpenuhi, maka program
akan mengecek kondisi kedua. Apabila ternyata kondisi kedua juga belum terpenuhi maka
program akan mengecek kondisi berikutnya, begitu seterusnya sampai ditemukan kondisi yang
sesuai. Namun apabila ternyata semua kondisi yang didefinisikan tidak terpenuhi, maka
program akan mengeksekusi statemen alternatif yang berada pada bagian akhir (di dalam
bagian else yang terakhir).




masuk
Kondisi1
Statemen jika
kondisi1
terpenuhi
keluar
Kondisi2 Kondisi3
Statemen jika
kondisi2
terpenuhi
Statemen jika
kondisi3
terpenuhi
Statemen jika
kondisi3 tidak
terpenuhi
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page7

Bentuk umum pendefinisian statmen if yang memiliki tiga kasus atau lebih:









Contoh program:







i f ( kondi si 1) t hen begi n
St at emen_j i ka_kondi si 1_benar ;

end el se i f ( kondi si 2) t hen begi n
St at emen_j i ka_kondi si 2_benar ;

end el se i f ( kondi si 3) t hen begi n
st at emen_j i ka_kondi si 3_benar ;

end el se begi n
St at emen def aul t ;

end;
ModulIVPemilihan(StatemenIF)

DasarPemrograman|UMB Page8

4.2.2. Statemen case
Apabila kondisi yang didefinisikan di dalam statemen if semakin banyak maka hal tersebut akan
menjadi sangat kompleks. Oleh karena itu, bahasa Pascal menyediakan alternatif lain untuk
melakukan pemilihan yang didasarkan pada nilai-nilai konstan tertentu, yaitu dengan
menggunakan statemen case. Dalam statemen case, nilai-nilai konstan yang didefinisikan
sebagai nilai pilihan harus bernilai unik dan berasal dari tipe ordinal (misalnya char , i nt egr ,
byt e, bool ean). Nilai tersebut juga harus berupa nilai konstan (tidak boleh berupa variabel
maupun ekspresi).
Bentuk umum pendefinisian statemen case:








Statemen default yang berada pada bagian el se di atas bersifat opsional, artinya bisa
dituliskan bisa juga tidak, hal ini tentu tergantung dari kasus program yang akan kita tulis.















case( ekspr esi ) of
ni l ai _konst an1 : st at emen1;
ni l ai _konst an2 : st at emen2;

el se
st at emen_def aul t ;
end;
Modul5Runtunan

DasarPemrograman|UMB Page1

MODUL5
RUNTUNAN

Algoritmamerupakanruntunan(sequence)satuataulebihinstruksi,yangberartibahwa:
1. Tiapinstruksidikerjakansatupersatu;
2. Tiapinstruksidilaksanakantepatsekali;tidakadainstruksiyangdiulang;
3. Urutan instruksi yang dilaksanakan pemroses sama dengan urutan instruksi
sebagaimanayangtertulisdidalamteksalgoritmanya;
4. akhirdariinstruksiterakhirmerupakanakhiralgoritma.
Urutan instruksi di dalam algoritma adalah penting. Urutan instruksi menunjukkan urutan
logik penyelesaian masalah. Bergantung pada masalahnya, urutan instruksi yang berbeda
mungkin tidak ada pengaruhnya terhadap solusi persoalan, tetapi mungkin juga
menghasilkankeluaranyangberbedapula.
5.1 Urutaninstruksiyangtidakberpengaruhterhadapsolusipersoalan.
Dibaca dua buah nilai integer dari keyboard, A dan B. Hitung jumlah keduanya dan
hasilkalikeduanya,lalucetakhasiljumlahdankalikepirantikeluaran.

pr ogr amr unt unan_1;


uses wi ncr t ;
var
a, b, c, d : i nt eger ;
begi n
wr i t e( ' masukan ni l ai A : ' ) ; r eadl n( a) ; {1}
wr i t e( ' masukan ni l ai B : ' ) ; r eadl n( b) ; {2}
c: =a+b; {3}
d: =a*b; {4}
wr i t el n( ' C= ' , c, ' dan D= ' , d) ;
end.

Output:

Jikaurutanno.3dan4ditukarkansebagaiberikut:
Modul5Runtunan

DasarPemrograman|UMB Page2

pr ogr amr unt unan_1;


uses wi ncr t ;
var
a, b, c, d : i nt eger ;
begi n
wr i t e( ' masukan ni l ai A : ' ) ; r eadl n( a) ; {1}
wr i t e( ' masukan ni l ai B : ' ) ; r eadl n( b) ; {2}
d:=a*b; {4}
c:=a+b; {3}
wr i t el n( ' C= ' , c, ' dan D= ' , d) ;
end.

Makaoutputyangakandikeluarkanakanbernilaisama.

Tapijikaurutanno.1dan2ditukarkansebagaiberikut:
pr ogr amr unt unan_1;
uses wi ncr t ;
var
a, b, c, d : i nt eger ;
begi n
d:=a*b; {4}
c:=a+b; {3}
wr i t e( ' masukan ni l ai A : ' ) ; r eadl n( a) ; {1}
wr i t e( ' masukan ni l ai B : ' ) ; r eadl n( b) ; {2}
wr i t el n( ' C= ' , c, ' dan D= ' , d) ;
end.

Makaoutputyangakandikeluarkanakanbernilaibeda.

Modul5Runtunan

DasarPemrograman|UMB Page3

5.2 Urutaninstruksiberpengaruhterhadapsolusipersoalan.
Diketahuiduabuahnilaiinteger,masingmasingdisimpandidalamduabuahpeubah
(variabel), yaitu A dan B. Bagaimana cara mempertukarkan nilai A dan B ? Misalnya,
sebelumnyapertukaranA=2danB=3,makasetelahpertukarannilaiA=3danB=2.
Dalam mempertukarkan nilai dua buah variabel, perlu digunakan variabel bantu,
misalnyatemp.
pr ogr amr unt unan_2;
uses wi ncr t ;
var a, b, t emp : i nt eger ;
begi n
a: =2;
b: =3;
wr i t el n( ' A= ' , a, ' dan B= ' , b) ;
temp:=a;
a:=b;
b:=temp;
wr i t el n( ' A= ' , a, ' dan B= ' , b) ;
end.

Outputnya:

Jikaproses(b:=temp)ditukarurutannyasepertiberikut:
pr ogr amr unt unant ukar _2;
uses wi ncr t ;
var a, b, t emp : i nt eger ;
begi n
a: =2;
b: =3;
wr i t el n( ' A= ' , a, ' dan B= ' , b) ;
temp:=a;
b:=temp;
a:=b;
wr i t el n( ' A= ' , a, ' dan B= ' , b) ;
end.

Modul5Runtunan

DasarPemrograman|UMB Page4

Outputnya:

Kedua program di atas akan memberikan hasil yang berbeda. Pada program pertama
akan memberikan hasil yang diinginkan sebaliknya pada program kedua nilai A dan b tidak
akan bertukar.
Pr ogr amKonver si _Det i k;
uses wi ncr t ;
Const Sat uhar i = 60 * 60 * 24;
Var
Det i k: l ongi nt ;
hr , j m, mn, dt : i nt eger ;

Begi n
Wr i t e ( ' masukkan wakt u ( dal amdet i k) : ' ) ;
Readl n( det i k) ;
Wr i t el n( det i k, ' det i k t er di r i dar i ' ) ;

hr : = det i k di v sat uhar i ;
det i k : = det i k - hr * sat uhar i ;

j m: = det i k di v 3600;
det i k : = det i k - j m* 3600;

mn : = det i k di v 60;
dt : = det i k - mn * 60;

Wr i t el n( hr , ' har i ' ) ;
Wr i t el n( j m, ' j am' ) ;
Wr i t el n( mn, ' meni t ' ) ;
Wr i t el n( dt , ' det i k' ) ;
End.

Modul5Runtunan

DasarPemrograman|UMB Page5

LATIHAN

1. Bila diketahui deskripsi di bawah ini, berapa hasil akhir A?
A 5
B 12
A A+2
B A+2
A A+B
Output (A)

2. Bila diketahui deskripsi di bawah ini, berapa hasil akhirnya bila m diberi nilai 5?
Input (m)
P m*2
M P+100
P P+m
Output (P)

3. Diketahui deskripsi di bawah ini, bila k diberi nilai 4, berapa hasil akhirnya ?
Input(k)
K 5+(2*k) 3*(5+k)
Output (k)

4. Diketahui deskripsi di bawah ini, bila a diberi nilai 10 berapa hasil akhirnya?
Input(a)
a a*2
b a
b b+a
Output (b)

Modul V Statemen Case Of



Dasar Pemrograman Pascal | UMB Page1

MODUL 5
CASE OF
5.1 Statemen Case Of
Apabila kondisi yang didefinisikan di dalam statemen if semakin banyak maka hal
tersebut akan menjadi sangat kompleks. Oleh karena itu, bahasa Pascal menyediakan alternatif
lain untuk melakukan pemilihan yang didasarkan pada nilai-nilai konstan tertentu, yaitu dengan
menggunakan statemen case. Dalam statemen case, nilai-nilai konstan yang didefinisikan
sebagai nilai pilihan harus bernilai unik dan berasal dari tipe ordinal (misalnya char ,
i nt eger , byt e, bool ean). Nilai tersebut juga harus berupa nilai konstan (tidak boleh
berupa variabel maupun ekspresi).
Bentuk umum pendefinisian statemen case:








Statemen default yang berada pada bagian el se di atas bersifat opsional, artinya bisa
dituliskan bisa juga tidak, hal ini tentu tergantung dari kasus program yang akan kita tulis.








case x of
1, 2, 3 : wr i t e( ' 1 t o 3' ) ;
2 : wr i t e( ' 2' ) ;
end
case( ekspr esi ) of
ni l ai _konst an1 : st at emen1;
ni l ai _konst an2 : st at emen2;

el se
st at emen_def aul t ;
end;
Modul V Statemen Case Of

Dasar Pemrograman Pascal | UMB Page2









Bila program dijalankan maka didapatkan output:
Ent er a di gi t : 1
OK
Atau
Ent er a di gi t : a
I ni adal ah hur uf












program hari;
uses wincrt;
var
day : integer;
begin
write('Masukkan hari ke-');
read(day);
case day of
1:
begin
writeln('senin');
Write(adalah hari pertama);
End;
2: write('selasa');
3: write('rabu');
4: write('kamis');
5: write('jumat');
6: write('sabtu');
7: write('minggu');
program cek;
uses wincrt;
var
c : char;
begin
write('Enter a digit :');
readln(c);
case c of
'0'..'9' : writeln('OK');
'a'..'z', 'A'..'Z' : writeln('Ini adalah huruf');
else
writeln('Apa ini?');
end
end.
Modul V Statemen Case Of

Dasar Pemrograman Pascal | UMB Page3

Bila program dijalankan maka didapatkan output:
Masukkan har i ke- 1
seni n
Atau
Masukkan har i ke- 8
Ti dak ada har i ke- 8


Program dibawah ini menggunakan statement If :







































pr ogr ammahasi swa;
uses wi ncr t ;
var sel : i nt eger ;
yn : char ;
nama, ni m: st r i ng;
begin
wr i t el n( ' [ 1] . pembuka' ) ;
wr i t el n( ' [ 2] . i si bi odat a' ) ;
wr i t el n( ' [ 3] . penut up' ) ;
wr i t e( ' masukan menu pi l i han [ 1- 3] : ' ) ;
r eadl n( sel ) ;
i f sel = 1 t hen
begin
wr i t el n( ' sel amat dat ang! ! ! ' ) ;
end;
i f sel = 2 t hen
begin
wr i t e( ' masukan ni m: ' ) ;
r eadl n( ni m) ;
wr i t e( ' masukan nama : ' ) ;
r eadl n( nama) ;
end;
i f sel = 3 t hen
begin
wr i t el n( sampai j umpa! ! ! ' ) ;
end;
end.
Modul V Statemen Case Of

Dasar Pemrograman Pascal | UMB Page4

Program ini menggunakan statement Case of :


























LATIHAN
1. Buatlah program seperti dibawah ini dengan menggunakan Case of!






















program mahasiswa;
uses wincrt;
var sel : integer;
nama, nim : string;
begin
writeln('[1].pembuka');
writeln('[2].isi biodata');
writeln('[3].penutup');
write('masukan menu pilihan [1-3] : ');
readln(sel);
case (sel) of
1: begin
writeln('selamat datang!!!');
end;
2:
begin
write('masukan nim : ');
readln(nim);
write('masukan nama : ');
readln(nama);
end;
3:
begin
writeln(sampai jumpa!!!');
end;
end;
end.

Modul V Statemen Case Of

Dasar Pemrograman Pascal | UMB Page5




















































program hitung;
uses wincrt;
var sel : integer;
nilai1, nilai2,jumlah, kurang, kali : integer;
begin
writeln('[1].penjumlahan');
writeln('[2].pengurangan);
writeln('[3].perkalian');
write('masukan menu pilihan [1-3] : ');
readln(sel);
case (sel) of
1: begin
writeln(PENJUMLAHAN');
write('masukan nilai1 : ');
readln(nilai1);
write('masukan nilai2 : ');
readln(nilai2);
jumlah:=nilai1+nilai2;
write('Hasil penjumlahannya : ',jumlah);
end;
2:
Begin
writeln(PENGURANGAN');
write('masukan nilai1 : ');
readln(nilai1);
write('masukan nilai2 : ');
readln(nilai2);
kurang:=nilai1-nilai2;
write('Hasil pennguranganya : ',kurang);
end;
3:
Begin
writeln(PERKALIAN');
write('masukan nilai1 : ');
readln(nilai1);
write('masukan nilai2 : ');
readln(nilai2);
kali:=nilai1*nilai2;
write('Hasil perkaliannya : ',kali);
end;
end;
end.

Modul V Statemen Case Of

Dasar Pemrograman Pascal | UMB Page6

Latihan
1. Buatlah program sepert dibawah ini dengan menggunakan statement Case of!





ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page1

MODUL VII
STATEMEN PENGULANGAN

Pengulangan (loop) merupakan bentuk yang sering ditemui di dalam suatu program aplikasi. Di
dalam bahasa Pascal, dikenal tiga macam perulangan, yaitu dengan menggunakan pernyataan
For, While-Do, dan RepeatUntil.

Macam-macam perulangan pada Pascal
1. Struktur perulangan For
Perulangan dengan pernyataal For digunakan untuk mengulang pernyataan atau satu blok
pernyataan berulang kali sejumlah yang ditentukan. Perulangan dalam pernyataan For
dapat berbentuk perulangan positif, perulangan negatif, dan perulangan tersarang.
2. Struktur perulangan While-Do
Perulangan ini menggunakan While-Do. Pernyataan While-Do digunakan untuk melakukan
proses perulangan suatu pernyataan atau blok pernyataan terus-menerus selama kondis
ungkapan logika pada While masih bernilai logika benar.
3. Struktur perulangan Repeat...Until
Struktur Repeat...Until digunakan untuk mengulang pernyataan-pernyataan atau blok
pernyataan sampai kondisi yang disleksi di Until tidak terpenuhi. Bentuk umumnya adalah
Repeat pernyataan Until.

Blok pengulangan merupakan suatu blok program yang memiliki mekanisme untuk melakukan
pengeksekusian statemen secara berulang yang bertujuan untuk membuat program yang kita
tulis menjadi efisien. Perhatikan contoh program berikut ini:










ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page2

Wr i t el n( Bahasa Pemogr aman Pascal ) ;













Output:


Tampak pada program diatas bahwa untuk menuliskan teks Bahasa Pemograman Pascal ke
layar sebanyak lima kali, kita harus menuliskan statemen


sebanyak lima kali juga. Bayangkan jika kita dituntut untuk menuliskannya sebanyak 50 kali
atau bahkan 100 kali. Hal ini tentu akan merepotkan, membosankan, dan juga menyita waktu
anda. Bahasa Pascal memiliki tiga buah konstruksi untuk melakukan pengulangan, yaitu
dengan menggunakan f or , whi l e. . . do dan r epeat . . . unt i l .
Bentuk Umum :
a. FOR i=v1 TO v2 DO statement
b. FOR i=v1 DOWNTO v2 DO statement

Pr ogr amUl angSt at emen;
Uses wi ncr t ;
Begi n
Cl r scr ;
Wr i t el n( Bahasa Pemogr aman Pascal ) ;
Wr i t el n( Bahasa Pemogr aman Pascal ) ;
Wr i t el n( Bahasa Pemogr aman Pascal ) ;
Wr i t el n( Bahasa Pemogr aman Pascal ) ;
Wr i t el n( Bahasa Pemogr aman Pascal ) ;
Readl n;
End.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page3

id =v1
t =v2
id <=t
statement
id =succ (id)
false
true
FOR - TO
id =v1
t =v2
id >=t
statement
id =pred (id)
false
true
FOR - downto


Contoh : (dari persoalan diatas)
FOR i :=1 to 20 DO write(i);
FOR I :=20 DOWNTO 20 DO write(i);

Contoh :
Var I : integer;
Begin
For I :=1 to 5 Do Writeln(Pascal);
End.
Hasilnya : Pascal
Pascal
Pascal
Pascal
Pascal

Penjelasan :
Berarti statement WriteLn(Pascal) akan diulang sebanyak 5 kali, yaitu dengan penghitung I
dari nilai awal 1 sampai dengan nilai akhir 5.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page4

Contoh :
Penulisan statement yang akan diproses berulang kali tersebut dapat juga ditulis dalam bentuk
blok statement (diawali dengan Begin dan diakhiri dengan And), walaupun hanya berisi sebuah
statement saja, sebagai berikut :

Var
I : i nt eger ;
Begi n
For I : = 1 t o 5 Do
Begi n
Wr i t eLn( Pascal ) ;
End;
End.

7.1 Statemen for
Pengulangan for pada umumnya digunakan untuk mengulang statemen atau satu blok
statemen berulang kali. Statemen for juga digunakan untuk melakukan pengulangan yang
banyaknya sudah diketahui secara pasti. Dalam pengulangan jenis ini kita selalu membutuhkan
sebuah variabel sebagai indeks pengulangan yang dapat bertipe bilangan bulat, karakter
maupun enumerasi.
7.1.1 Perulangan Positif
Perulangan positif adalah perulangan dengan penghitung dari kecil ke besar atau
dengan kata lain pertambahannya positif. Perulangan positif dapat dibentuk dengan
menggunakan statemen For - To- Do.
Bentuk umum pendeklarasiaannya:








ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page5













Banyaknya pengulangan yang akan dilakukan dihitung dari mulai nilai batas awal sampai nilai
batas akhir. Perlu diperhatikan bahwa nilai dari batas awal harus lebih kecil dari pada nilai batas
akhir. Apabila nilai batas awal sama dengan nilai batas akhir, maka statemen hanya akan
dilakukan satu kali. Nilai awal dari indeks dapat dimulai dari berapa saja, asal nilai akhirnya
disesuaikan dengan banyaknya pengulangan yang akan dilakukan. Adapun nilai dari variabel
indeks tersebut akan dinaikkan sebesar 1 secara otomatis setiap akhir pengeksekusian
statemen.
Contoh1: program yang didalamnya terdapat pengulangan yang menggunakan statemen for.














{unt uk sat u st at emen}
for var i abel _i ndeks : = bat as_awal to bat as_akhi r do
St at emen_yang_akan_di ul ang;

{unt uk st at emen yang banyaknya l ebi h dar i sat u}
for var i abel _i ndeks : = bat as_awal to bat as_akhi r do
begin
St at emen_yang_akan_di ul ang;
St at emen_yang_akan_di ul ang;
.
end;
pr ogr amst at emenf or 1;
uses wi ncr t ;
var
i : i nt eger ;
begi n
cl r scr ;
f or i : = 1 t o 5 do
wr i t el n( ' Bahasa Pemogr aman Pascal ' ) ;
end.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page6

Output:



Penjelasan:
Program diatas akan melakukan statemen sebanyak 5 kali, dari mulai indeks ke-1 sampai
indeks ke-5, sehingga dilayar monitor akan tampil teks Bahasa Pemograman Pascal sebanyak
5 buah.

Contoh2: program yang didalamnya terdapat pengulangan yang menggunakan statemen for
yang ditulis dalam bentuk blok statemen (diawali dengan Begin dan diakhiri dengan End),
walaupun hanya berisi sebuah statemen saja.











pr ogr amst at emenf or 2;
uses wi ncr t ;
var
i : i nt eger ;
begi n
cl r scr ;
f or i : = 1 t o 5 do
begi n
wr i t el n( ' Bahasa Pemogr aman Pascal ' ) ;
end;
end.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page7

Output:


















Contoh3: program yang didalamnya terdapat proses perulangan sebanyak 2 buah statemen
dalam satu blok statemen.

















pr ogr amst at emenf or 2;
uses wi ncr t ;
var
i : i nt eger ;
begi n
cl r scr ;
f or i : = 1 t o 5 do
begi n
wr i t e( i ) ;
wr i t el n( ' Bahasa Pemogr aman Pascal ' ) ;
end;
end.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page8

Output:


Bandingkan program contoh sebelumnya dengan program berikut ini yang tidak menggunakan
blok statemen:















pr ogr amst at emenf or 2;
uses wi ncr t ;
var
i : i nt eger ;
begi n
cl r scr ;
f or i : = 1 t o 5 do
wr i t e( i ) ;
wr i t el n( ' Bahasa Pemogr aman Pascal ' ) ;
end.
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page9

Output:















Penjelasan:
Maka yang diulang hanya sataemen pertama saja, statemen berikutnya tidak termasuk dalam
perulangan karena tidak dalam bentuk blok statemen.

7.1.2 Perulangan Negatif
Perulangan negatif adalah perulangan dengan penghitung dari besar ke kecil atau
dengan kata lain pertambahannya negatif. Perulangan negatif dapat dibentuk dengan
menggunakan statemen For-DownTo-Do.

Bentuk umum pendeklarasiannya:








for var i abel _i ndeks : = bat as_awal Downto bat as_akhi r do
St at emen_yang_akan_di ul ang;
ModulVIIStatemenPengulangan

Dasar Pemrograman Pascal | UMB Page10

Contoh program yang didalamnya menggunakan pengulangan yang bersifat menurun:













Bila program dijalankan maka didapatkan output:















pr ogr amst at emenf or 5;
uses wi ncr t ;
var
i : i nt eger ;
begi n
cl r scr ;
{mel akukan pengul angan dengan i ndeks awal = 5}
f or i : =5 downt o 1 do begi n
wr i t el n( i ) ;
end;
r eadl n;
end.
MODULVIIPERULANGAN

Dasar Pemrograman Pascal | UMB Page1

MODUL VII
STATEMENT PERULANGAN 2
Pengulangan (loop) merupakan bentuk yang sering ditemui di dalam suatu program
aplikasi. Di dalam bahasa Pascal, dikenal tiga macam perulangan, yaitu dengan
menggunakan pernyataan For, While-Do, dan RepeatUntil.
7.1 Struktur Perulangan While-Do
Perulangan ini menggunakan pernyataan WhileDo. Pernyataan WhileDo
digunakan untuk melakukan proses perulangan suatu pernyataan atau blok pernyataan
terus-menerus selama kondisi ungkapan logika pada While masih bernilai logika benar.
Bentuk Umum : While kondisi ungkapan Do Pernyataan
Contoh :












Bila program dijalankan akan menghasilkan:

0
1
2
3
4

pr ogr amwhi l e- do;
uses wi ncr t ;
Var
i : I nt eger ;
Begi n
i : =0;
Whi l e i <5 Do
Begi n
Wr i t el n( i ) ;
i : =i +1;
End;
End.
MODULVIIPERULANGAN

Dasar Pemrograman Pascal | UMB Page2

Perhatikan pada bagian listing program yang menyatakan pengulangan sintak :

List Program Penjelasan
WHI LE i <5 DO
Begi n Awal pr ogr amyang akan di ul ang
Wr i t el n( i ) ; Mencet ak var i abel i
i : =i +1;
Penambahan var i abel i agar ni l ai nya
ber t ambah set i ap pengul angan.
End; Akhi r pr ogr amyang akan di ul ang





7.2 Struktur Perulangan Repeat...Until
Struktur RepeatUntil digunakan untuk mengulang pernyataan-pernyataan atau
blok pernyataan sampai kondisi yang diseleksi di Until tidak terpenuhi.
Bentuk umum : Repeat pernyataan Until
Contoh :










pr ogr amwhi l e- do;
uses wi ncr t ;
Var i : i nt eger ;
Begi n
i : =1;
REPEAT
Wr i t el n( i ) ;
i : =i +1;
UNTIL i >5; {sampai nilai i>5 maka program akan berhenti}
End.
pr ogr amLOOPS2( i nput , out put ) ;
var i , l i mi t : i nt eger ;

begi n
wr i t el n( ' Pl ease ent er a l i mi t . ' ) ;
r eadl n( l i mi t ) ;
whi l e i <= l i mi t do
begi n
wr i t e( i , ' ' ) ;
i : = i + 1;
end;
end.
MODULVIIPERULANGAN

Dasar Pemrograman Pascal | UMB Page3

Bila program dijalankan akan menghasilkan:

1
2
3
4
5

Perhatikan list program yang berada diantara fungsi pustaka repeat dan until.

List Program Penjelasan
REPEAT Awal si nt ak pengul angan REPEAT
Wr i t el n( i ) ; Mencet ak var i abel i
i : =i +1; Menambah var i abel i dengan sat u
UNTIL i >5; Ekspr esi l ogi ka sebagai syar at ber hent i

Contoh :














pr ogr amber at _i deal ;
uses wi ncr t ;

var
t , m: r eal ;
j : char ;

begi n
r epeat
cl r scr ;
begi n
wr i t e( ' Masukkan t i nggi badan Anda=' ) ; r eadl n( t ) ;
m: =( ( t - 100) - ( 0. 1*( t - 100) ) ) ;
wr i t el n( ' Ber at i deal Anda= ' , m: 2: 0) ;
wr i t e( ' Anda I ngi n menghi t ung l agi ?=' ) ; r eadl n( j ) ;
end;
unt i l ( j <> ' y' ) ;

end.
MODULVIIPERULANGAN

Dasar Pemrograman Pascal | UMB Page4



LATIHAN
1. Buatlah suatu program untuk menampilkan bilangan ganjil dari 1 sampai 100 dengan
menggunakan perulangan FOR!
2. Buatlah tampilan seperti dibawah ini!
A
BC
DEF
GHIJ
3. Buatlah suatu program yang menerima input bilangan bulat positif. Program sistem
dapat menentukan apakah input bilangan tersebut adalah bilangan prima atau bukan!
2/16/2013
1
ReviewTugas
Programganjil;
useswincrt;
var var
i,n:integer;
J:char;
begin
repeat
write(Masukann=');
readln(n);
writeln;
f i t d fori:=1tondo
if(imod2=1)then
writeln(i);
Writeln(Andainginmengulanglagi?);
Read(j);
Until(j<>y)
end.
ReviewTugas2
programbil_prima;
useswincrt;
i j i varx,i,j:integer;
begin
write('Masukkanangka=');
readln(i);
writeln;j:=0;
forx:=1toido
if(imodx=0)then
j:=j+1;
writeln(i);
ifj=2then
write('inibilanganprima')else
write('inibukanbil.prima');
end.
2/16/2013
2
Random
The Random command will give you a random number The Random command will give you a random number
from 0 to the number you give it 1. The Random
command generates the same random numbers every
time you run a program so the Randomize command is
used to make them more random by using the system
clock.
Randomize;
i:=Random(100);
ContohProgramRandom
programRand;
Variabel random
programRand;
var
i:Integer;
begin
Randomize;
i:=Random(10);
it (i)
Variabel random
karena bernilai angka
maka bertipe kan
integer
RandomCommand
Nilai pada variabel i
akan diacak dari 0 10
,j
write(i);
end.
akan diacak dari 0 10
Variabel i ditampilkan
setelah diacak(random)
j:=Random(10);
write(j);
2/16/2013
3
Latihan
1.Buatlahprogramperkaliandariduabuahvariabel 1.Buatlahprogramperkaliandariduabuahvariabel
yangnilainyarandom,dimanapenggunamenginput
hasilperkaliannyadansistemakanmengecek
kesalahannya!
A B X
Nilai Adan Badalah
diberi command
random random
Usermenginput
jawaban C =
Pesan J awaban Anda Benar atau J awaban Anda Salah
ORD
ORDadalahMerubahnilaisuatuvariabeldaribentuk
karakterkebentuklongint karakterkebentuklongint.
programubah1;
useswincrt;
varx:integer;
b i begin
write(ord('B'));
end.
2/16/2013
4
CHR
CHRadalah Merubah nilai dari byteke bentuk karakter
i d k d ASCII yangsesuai dengan kode ASCII.
programubah2;
useswincrt;
var x:byte;
begin
forx:=0to255do
write(chr(x));
end.
Programcariascii;
useswincrt;
var
x:byte;
lagi:char;
b i begin
lagi:='Y';
while(upcase(lagi)='Y')do
begin
clrscr;
write('KodeASCIIyangingin');
write('AndaLihat!(0255):');readLn(x);
writeLn;
writeLn('KodeASCIInyaadalah:',CHR(x));
writeLn;
write('Maulihatlagi?(y/t):');
readLn(lagi);
end;
end.
2/16/2013
5
Upcase
programhurufkeciljdbesar; programhurufkeciljdbesar;
useswincrt;
varx:char;
begin
clrscr;
write('KetiksatuHurufkecil:');readLn(x); write( KetiksatuHurufkecil: );readLn(x);
writeLn('Hurufyangdiketikjadi:',UpCase(x));
readLn;
end.
programconversion_character;
useswincrt;
functionKHuruf(s:string):string;
var
x:byte;
panjang:integer;
begin
panjang:=length(s);
f t j d forx:=1topanjangdo
begin
ifs[x]<>upcase(s[x])then
s[x]:=upcase(s[x])
else
ifs[x]=''thens[x]:=s[x]
else
s[x]:=chr(ord(s[x])+32);
end;
KHuruf:=s;
end;
var
k:string;
begin
write('Writeaword=');readln(k);
writeln;
writeln('yourwardare:',k);
writeln;
writeln('afterconversion=',KHuruf(k));
end.
2/16/2013
1
String as array of char
Limited length string
String manipulation commands : String manipulation commands :
Length, Copy, Pos, Val, Str, Concat,
Insert, Delete, Fillchar
String as a pointer of characters
(PChar), introduction
Actually, string is an array of characters. So, suppose s is a
t i [1] i l t th fi t h t f [2] i th d string. s[1] is equal to the first character of s. s[2] is the second
character, and so on. Look at this :
var s : string;
begin s:='Hello, dear';
writeln(s);
s[1]:='J'; { Replace the first character with J }
s[5]:='y'; { Replace the fifth character with y }
writeln(s); { Jelly, dear }
writeln('The length of s is ',byte(s[0]));
end.
2/16/2013
2
Copy : get an excerpt from a string.
Syntax : copy(variabel,from,howmuch)
Contoh : Contoh :
Who Are You ?
Kalimat ini terdiri dari 13
karakter
Sekarang kita akan meng-copy kata You pada kalimat tersebut
Who Are You ? Who Are You ?
1 2
4
3 567
8
9
10
11
12
13
*syntaxnya adalah : misal kita beri nama variabelnya S jadi
COPY(S, 9,3);
program salinkata;
uses wincrt;
Var
S : String;
Begin
S := 'Who are you ?';
writeln(S);
S := Copy(S, 9, 3); { meng-copy kata you }
Writeln('hasil copy : ' S); Writeln( hasil copy : ,S);
End.
2/16/2013
3
Pos : get the position of a substring from a string.
Syntax : Pos(substr,s)
Contoh :
Who Are You ?
Kalimat ini terdiri dari 13
karakter
Sekarang kita cari posisi You ada pada index berapa?
program posisi;
uses wincrt;;
Var
S : String;
Begin
S := 'Who are you?';
Writeln(Pos('are',S));
End.
Insert : Insert a string inside another string from index character
Syntax : insert(source,target,index)
Contoh :
program sisip;
uses wincrt;
var
s1, s2 : string;
begin
s1 :='aku cinta kalian';
writeln('kalimat utama = ',s1);
s2:='tidak '; s2: tidak ;
writeln('kata yang akan disisipkan = ', s2);
insert(s2,s1,5);
readln;
writeln('setelah di insert = ',s1);
end.
2/16/2013
4
Delete : Deletes n characters from string s starting from
index i.
Syntax : delete(source,target,jumlahkata);
program hapus;
uses wincrt;
var
s1, s2 : string;
begin
s1 :='aku cinta kalian';
writeln(s1); writeln(s1);
delete(s1,1,3);
readln;
writeln('setelah dihapus = ',s1);
end.
Val : konversi string ke numeric
Syntax : val(strvar,numvar,errorcode)
- strvar adalah variabel string yang akan dikonversi
- numvar is variabel numeric yang bertipekan integer
maupun real
- errorcode is an integer variable that holds the error
code. If errorcode is 0, conversion success. Otherwise, , ,
it points at the position of strvar that cause failure
2/16/2013
5
program konversi;
uses wincrt;
var
s : string;
e : integer;
r : real;
begin
write('Enter a number : '); readln(s);
val(s,r,e);
if e<>0 then
writeln('Error at position : ',e)
else
writeln('That was : ',r:4:3);
end.
Str : konversi numeric ke string
Syntax : str(numvar,strvar)
Contoh :
program konversi2;
uses wincrt;
var
s : string;
i : integer;
begin g
write('Input an integer : '); readln(i);
str(i,s);
writeln('That was : ',s);
end.
ARRAY
Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang
mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik
mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik
ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan
menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte,
word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik
mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data
tersebut.
Gr ades = Ar r ay [ 1. . 5] of I nt eger ;
Al pha_count er s = Ar r ay [ ' a' . . ' z' ] of I nt eger ;
Nama = Ar r ay [ 1. . 4] of St r i ng[ 30] ;
Li st = Ar r ay [ 1. . 100] of 1. . 100;
Avg_l i st = Ar r ay [ 1. . 50] of Real ;
Fl ag_l i st = Ar r ay [ 1. . 10] of Bool ean;

1. Array satu dimensi
Contoh:
Var X : array[1..50] of Integer;
Pada contoh Array dengan nama X telah dideklarasikan dengan tipe integer, dengan
jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus
bertipe integer.
Contoh Program :
Pr ogr amCont oh_Ar r ay_I nput ;
Uses wi ncr t ;
Var Bilangan : ar r ay[ 1. . 5] of Integer;
Begi n
Cl r Scr ;
Bi l angan[ 1] : =3;
Bi l angan[ 2] : =29;
Bi l angan[ 3] : =30;
Bi l angan[ 4] : =31;
Bi l angan[ 5] : =23;
Wr i t el n( ' ni l ai var i bel bi l angan ke 3 =' , Bilangan[ 3] ) ;
Readl n;
End.

Contoh Program2 :
Pr ogr amCont oh_Ar r ay_I nput 2;
Uses wi ncr t ;
Var jurusan : ar r ay[ 1. . 5] of String;
Begi n
Cl r Scr ;
j ur usan[ 1] : = Tekni k I nf or mat i ka ;
j ur usan[ 2] : = Si st emI nf or masi ;
j ur usan[ 3] : = Ekonomi ;
j ur usan[ 4] : = Tekni k El ekt r o ;
j ur usan[ 5] : = Desai n Gr af i s ;
Wr i t el n( ' ni l ai var i bel j ur usan ke 1 = ' , jurusan[ 1] ) ;
Readl n;
End.

Contoh Program3 :
Pr ogr amCont oh_Ar r ay_I nput 3;
Uses wi ncr t ;
Var jurusan : ar r ay[ ' a' . . ' z' ] of String;
Begi n
Cl r Scr ;
j ur usan[ ' a' ] : =' Tekni k I nf or mat i ka' ;
j ur usan[ ' b' ] : =' Si st emI nf or masi ' ;
j ur usan[ ' c' ] : =' Ekonomi ;
j ur usan[ ' d' ] : =' Tekni k El ekt r o' ;
j ur usan[ ' e' ] : =' Desai n Gr af i s' ;
Wr i t el n( ' ni l ai var i bel j ur usan ke 1 = ' , jurusan[ ' a' ] ) ;
Readl n;
End.




PERULANGAN DI DALAM ARRAY
Salah satu cara untuk menampilkan semua nilai data dalam variabel array adalah dengan
menggunakan struktur looping seperti FOR atau WHILE.
1. FOR
Pr ogr amCont oh_Ar r ay_ul ang1;
Uses wi ncr t ;
Var jurusan : ar r ay[ 1. . 5] of String;
Begi n
Cl r Scr ;
j ur usan[ 1] : = Tekni k I nf or mat i ka ;
j ur usan[ 2] : = Si st emI nf or masi ;
j ur usan[ 3] : = Ekonomi ;
j ur usan[ 4] : = Tekni k El ekt r o ;
j ur usan[ 5] : = Desai n Gr af i s ;
f or i : = 1 t o 5 do
begi n
wr i t el n( ' ni l ai var i bel j ur usan ke- , i , = ' , jurusan[ i ] ) ;
end;
End.

Output :

2. WHILE DO
Pr ogr amCont oh_Ar r ay_ul ang2;
Uses wi ncr t ;
Var jurusan : ar r ay[ 1. . 5] of String;
Begi n
Cl r Scr ;
j ur usan[ 1] : = Tekni k I nf or mat i ka ;
j ur usan[ 2] : = Si st emI nf or masi ;
j ur usan[ 3] : = Ekonomi ;
j ur usan[ 4] : = Tekni k El ekt r o ;
j ur usan[ 5] : = Desai n Gr af i s ;
i : =1;
whi l e i <= 5 do
begi n
wr i t el n( ' ni l ai var i bel j ur usan ke- ' , i , ' = ' , jurusan[ i ] ) ;
i : =i +1;
end;
End.

Output :

Nilai varibel array yang berasal dari inputan
Pr ogr amCont oh_Ar r ay_I nput ;
Uses wi ncr t ;
Var j ur usan : ar r ay[ 1. . 5] of St r i ng;
i : i nt eger ;
Begi n
i : =1;
wr i t e( ' Masukan j ur usan : ' ) ;
r eadl n( j ur usan[ i ] ) ;
wr i t el n( ' J ur usan i ndex ke- ' , i , ' adal ah ' , j ur usan[ i ] ) ;
End.

Pr ogr amCont oh_Ar r ay_I nput ;


Uses wi ncr t ;
Var j ur usan : ar r ay[ 1. . 5] of St r i ng;
i : i nt eger ;
Begi n
For i : = 1 t o 5 do
begi n
wr i t e( ' Masukan j ur usan : ' ) ;
r eadl n( j ur usan[ i ] ) ;
wr i t el n( ' J ur usan i ndex ke- ' , i , ' adal ah ' , j ur usan[ i ] ) ;
end;
End.

Pr ogr amCont oh_Ar r ay_I nput ;


Uses wi ncr t ;
Var j ur usan : ar r ay[ 1. . 5] of St r i ng;
i : i nt eger ;
Begi n
Wr i t e( Masukan dat a ar r ay yang di per l ukan = ) ;
Readl n( i ) ;
For i : = 1 t o i do
begi n
wr i t e( ' Masukan j ur usan : ' ) ;
r eadl n( j ur usan[ i ] ) ;
wr i t el n( ' J ur usan i ndex ke- ' , i , ' adal ah ' , j ur usan[ i ] ) ;
end;
End.

LATIHAN
Buatlah program yang di dalamnya terdapat 3 array yaitu untuk NIM, NAMA, J URUSAN
yang semua variabelnya berasal dari inputan pengguna!





2. Array Dua Dimensi
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array
dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array
2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama
menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik.
1 2
1 2 3
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat
dilihat pada listing program dibawah ini.
Contoh Program:
Pr ogr amDekl ar asi _Ar r ay_Dua_Di mensi ;
Uses Cr t ;
Var Tabel : Ar r ay[ 1. . 3, 1. . 2] of I nt eger ;
i , j : I nt eger ;
Begi n
Cl r Scr ;
Tabel [ 1, 1] : =1;
Tabel [ 1, 2] : =2;
Tabel [ 2, 1] : =3;
Tabel [ 2, 2] : =4;
Tabel [ 3, 1] : =5;
Tabel [ 3, 2] : =6;
For I : = 1 t o 3 Do Begi n For J : = 1 t o 2 Do Begi n Wr i t el n( ' El emen
' , i , ' , ' , j , ' = ' , t abel [ i , j ] ) ;
End;
End;
Readl n;
End.










LATIHAN
Program bilangan romawi merupakan program untuk menconversi bilangan desimal
menjadi bilangan romawi.
Berikut beberapa contoh bilangan romawi :
I =1 XL =40 D =500
IV =4 L =50 CM =900
V =5 XC =90 M =1000
IX =9 C =100
X =10 CD =400
Berikut adalah source code dalam bahasa pascal untuk program conversi dari bilangan
desimal ke bilangan romawi :
pr ogr amRomawi ;
uses wi ncr t ;
const r om: ar r ay [ 1. . 13] of st r i ng =

( ' M' , ' CM' , ' D' , ' CD' , ' C' , ' XC' , ' L' , ' XL' , ' X' , ' I X' , ' V' , ' I V' , ' I ' ) ;
des : ar r ay [ 1. . 13] of i nt eger =
( 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1) ;
var
bi l , i : i nt eger ;
r oma : st r i ng;
begi n
wr i t e( ' Masukan suat u bi l angan [ 1. . 3999] : ' ) ;
r eadl n( bi l ) ;
i f ( bi l >0) and ( bi l <4000) t hen
begi n
f or i : =1 t o 13 do
begi n
whi l e ( bi l >= des[ i ] ) do
begi n
bi l : = bi l - des[ i ] ;
r oma : = r oma + r om[ i ] ;
end;
end;
wr i t el n( ' angka r omawi dar i bi l angan di at as adal ah : ' , r oma)
end
el se
wr i t el n( ' Ti dak di ket ahui si mbol r omawi nya. . . ' ) ;
end.