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

I.BAHASAPEMROGRAMAN
A.SejarahPerkembanganBahasaPemrograman

Perkembanganbahasapemrogramanmungkintidaksemudahyangkitakira,namun
perkembangantersebutsangatlahsulitdanmemakanwaktuyanglamahinggabisamenjadi
bahasapemrogramanyangbisakitanikmatisekarangini.
Pembagiangenerasibahasaadalahsepertiberikut:
1. FirstGenerationLanguage(1GL)adalahbahasamesinataulevelinstruksidandata,
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
salingberkomunikasi.Samahalnyadengankomputer,walaupunkomputerbukanmakhluk
bernyawa, namun dalam pengoperasiannya pun kita perlu untuk berkomunikasi dengan
komputertersebutgunamenyampaikanperintahperintahapasajayanginginkitalakukan.
Dan untuk member perintah tersebut kita menggunakan bahasa yang dimengerti oleh
komputertersebut.Bahasayangdimaksuddisebutdenganbahasapemrogramanan.

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:TurboAssemblerdandebugdiDOS.Assemblerakanmencocokkantoken
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
mendukunginformationhiding,enkapsulasi,danabstractdatatype.Bahasatingkat
tinggi terdiri dari beberapa generasi, misalnya generasi ke3 (Pascal, C/C++) dan

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.

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

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.

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.

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). Jadi 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

Page1

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. Judul Program
2. Blok Program
a. Bagian deklarasi

Deklarasi label

Definisi konstanta

Deinisi tipe

Deklarasi variabel

Deklarasi prosedur

Deklarasi fungsi

Page2

Modul 1-Pengenalan Pascal

b. Bagian pernyataan

Judul program
Bagian deklarasi

Bagian pernyataan

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

Program <judul program>


Uses <daftar unit>
<bagian deklarasi>
Begin
<bagian pernyataan>
End.

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:
Program Pertamaku;
atau
Program Pertama_ku;

Page3

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 crt; dan uses wincrt;
yang artinya kita menggunakan suatu unit yang bernama crt atau wincrt, 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 clrscr 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 ketentuanketentuan 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

Page4

Modul 1-Pengenalan Pascal

contoh :
(deklarasi tipe data)
Type
Larik = array[1..100] of integer;
(deklarasi konstanta)
Const
N = 100;

(deklarasi variable)
Var
Nama : string;
X : integer;

(deklarasi prosedur)
Procedure Tulis(s : string);
Begin
Writeln(s);
End;

(deklarasi fungsi)
Function Kuadrat (a : integer) : integer;
Begin
Kuadrat := a * a;
End;

(deklarasi label)
Label BARIS;

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 ( ; ).

Page5

Modul 1-Pengenalan Pascal

Contoh:
begin
Writeln('Selamat datang di dunia Pascal);
end.
Jadi program secara keseluruhan adalh sebagai berikut:
program Pertama;
uses
winCrt;
begin
Writeln('Selamat datang di dunia Pascal);
end.
Tampilan di layar setelang di running:

Mengenal Prosedur Writeln dan Readln


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

program penjumlahan_langsung;
uses wincrt;
var
Luas,p,l:integer;
begin
p:=20;
l:=25;
Luas:=p*l;
writeln(Jadi Luas=',Luas);
end.

Page6

Modul 1-Pengenalan Pascal

Output

LATIHAN 1
1. SEMPURNAKAN PROGRAM DIBAWAH INI !
program menghitung_jarak
uses wincrt
var
X1,X2,Y1,Y2:integer
d real
begin
writeln(program menghitung jarak titik A dan B)
writeln(======================================)
writeln
write(Masukkan Nilai A (X1):) readln (X1)
write(Masukkan Nilai B (X2):) readln (X2)
write(Masukkan Nilai A (Y1):) readln (Y1)
write(Masukkan Nilai B (Y2):) readln (Y2)
d:=sqrt(sqr(X2-X1) + sqr(y2-y1))

Page7

Modul 1-Pengenalan Pascal

writeln
writeln(jadi jarak titik A ke titik B adalah :
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?

Page8

MODULIIElemenDasarPascal
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
(* Ini adalah komentar program yang banyaknya satu baris*)
(* Ini juga merupakan komentar program dengan banyak

baris

lebih dari satu*)


2. Menggunakan tanda {...}
Komentar ini lebih sering digunakan oleh para programmer Pascal karena lebih
singkat dan sedrhana.
Contoh:
{ Ini adalah komentar program yang banyaknya satu baris}
{ Ini juga merupakan komentar program dengan banyak baris
lebih dari satu}
contoh:
program komentar;
uses wincrt;
begin
clrscr;
{ini adalah komentar dan tidak akan dieksekusi oleh
program}
writeln('mencoba menuliskan komentar program');
{ini (*juga*) komentar sehingga tidak akan ditampilkan di
dalam hasil keluaran}

readln;
end.

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal
Bila program dijalankan maka didapatkan output:
mencoba menuliskan komentar program

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 : tipe_data;
Contoh:
Var
x : integer;

{Variabel x dengan tipe integer}

Nama : string[25]; {variabel Nama dengan tipe string}


{variabel x,y, dan z degan tipe integer}

x,y,z : integer;

Adapun aturan-aturan penamaan variabel dalam Pascal adalah sebagai berikut:


1. Tidak boleh mengandung spasi, simbol atau tanda.
Contoh:
Nama Lengkap : string;

{SALAH karena mengandung spasi}


{SALAH karena mengandung simbol}

@mail?! : string;
2. Tidak boleh diawali dengan angka
Contoh:
2Dimensi : Tpoint;

{Anggap Tpoint record buatan}

3. Tidak boleh menggunakan kata kunci yang sudah terdapat di dalam bahasa Pascal.
Contoh:

For : integer;

{Menggunakan kata kunci for}

While : boolean;

{menggunakan kata kunci while}

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal
Contoh program penggunaan variabel didalam program:
Program LatVar2;
uses wincrt;
var
bilangan: integer;
hasil: longint;
begin
clrscr;
write('Masukkan sebuah bilangan: ');
readln(bilangan);
hasil:=bilangan*bilangan*bilangan;
write(bilangan,'^3= ',hasil);
readln;
end.

Bila program dijalankan maka didapatkan output:


Masukkan sebuah bilangan : 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:
Program LatVarGlobal;
Uses wincrt;
Var
VarGlobal : integer;

{mendefinisikan prosedur}
Procedure Proc1;
Begin

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal
....
End;
{mendefinisikan fungsi}
Function Func1: integer;
Begin
.......
End;

{pogram utama}
Begin
.....
End.

Pada kode program di atas, VarGlobal merupakan variabel yang bersifat global
sehingga akan dikenali oleh setiap bagian program, baik prosedur Proc1, 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:
Function Func1: integer;
Var
VarLokal : integer;
Begin
.........
End;

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

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal

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 = nilai_konstanta1;
NamaKonstanta2 = nilai_konstanta2;
......

Contoh:
const
MYPI = 3.1416;
MAX_RECORD = 100;
PENERBIT = CV INFORMATIKA BANDUNG;

Contoh program yang tidak menggunakan konstanta


program tanpakons;
uses wincrt;
var
A : array [1..5] of integer;
i : integer;
begin
clrscr;
for i:=1 to 5 do
A[i] := i * 5;
for i:=1 to 5 do
writeln('A[', i,'] = ', A[i]);
readln;

end.

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal
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


program menggunakankons;
uses wincrt;
const
MAX=10;
var
A : array [1..MAX] of integer;
i : integer;
begin
clrscr;
for i:=1 to MAX do
A[i] := i * 10;
for i:=1 to MAX do
writeln('A[', i,'] = ', A[i]);
readln;
end.

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal

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

Dasar Pemrograman Pascal

MODULIIElemenDasarPascal

Dasar Pemrograman Pascal

ModulIIITipeData

MODULIII
TIPEDATA

Jenis/TipeData
Padawaktusebuahvariabeldideklarasikanmakatipenyasekaligusditentukan.Tipedarisuatu
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

128..127

Integer

327.68..32.767

Longint

2.147.483.648..
2.147.483.647

Byte

0..255

Word

0..65.535


2. TipeBilanganRiil
Merupakantipedatauntukmerepresentasikanbilanganbilanganriil(floatingpoint).
Tipedatayangtermasukkedalamtipebilanganriiladalah:

DasarPemrogramanUMB

Page1

ModulIIITipeData
TipeData

Ukuran(Byte) RentangNilai

Real

2.9x1039sampai1.7x1038

Single

1.5x1045sampai3.4x1038

Double

5.0x10324sampai1.7x10308

Extended

10

3.4x104932sampai1.1x104932

Comp

9.2x1018sampai9.2x1018

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}

DasarPemrogramanUMB

Page2

ModulIIITipeData

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

Page3

ModulIIITipeData
Contohprogramyangmenggunakanoperatorassignment:

program operatorpenugasan;
uses wincrt;
var
x : integer;
begin
clrscr;
x := 10;
writeln('Nilai x mula-mula
:',x);
x := x + 20;
writeln('Nilai x setelah ditambah 20 : ',x);
x := x-5;
writeln('Nilai x setelah dikurangi 5 : ',x);
readln;
end.

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 Integer,real

real

5/3

Integer

10div4

integer

10mod3

bilanganriil
div

Pembagianuntuk Integer
bilanganbulat

mod

Sisabagi

DasarPemrogramanUMB

integer

Page4

ModulIIITipeData
OperatorLogika
Operatorlogikadigunakanuntukmelakukanoperasioperasiyangmenghasilkannilailogik(true
danfalse).Bahasapascalmenyediakan4buahoperatorlogika,yaitu:
Operator

JenisOperasi

TipeOperand

TipeHasil

not

Contoh

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

boolean

boolean

AxorB

disjunction

OperatorRelasional
Operatorrelasionaladalahoperatoryangdigunakanuntukmenentukanrelasiatauhubungan
dariduabuahnilaiatauoperand.Operatoriniterdapatdalamsebuahekspresiyangselanjutnya
akan menentukan benar atau tidaknya ekspresi tersebut. Operator relasional biasanya
digunakanuntukmelakukanpengecekankondisidalamblokpemilihan.Adapunyangtermasuk
kedalamoperasionaldidalambahasaPascaladalahsebagaiberikut:
Operator JenisOperasi

TipeOperand

TipeHasil

Contoh

Tipedasar,string,

boolean

A=3

boolean

A<>3

boolean

A<1

boolean

A>5

boolean

A<=B

boolean

A>=B

Samadengan

Pchar,set
<>

<

Tidaksama

Tipedasar,string,

dengan

Pchar,set

Lebihkecil

Tipedasar,string,
Pchar

>

Lebihbesar

Tipedasar,string,
Pchar

<=

>=

Lebihkecilatau

Tipedasar,string,

samadengan

Pchar,set

Lebihbesaratau

Tipedasar,string,

samadengan

Pchar,set

DasarPemrogramanUMB

Page5

ModulIIITipeData
Latihan
1. Buatlahprogramygmemintauseruntukmemasukkannamadanberisalamdengan
memanggilkembaliinputanyangtaditelahdimasukkan.Outputnyaadalahsebagaiberikut:

Masukkan nama anda :


Hallo,, apa kabar?

2.Buatlahprogramkasirsederhanasepertidibawahini!

DasarPemrogramanUMB

Page6

ModulIVPemilihan(StatemenIF)
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++, Java) 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:
{memasukkan nilai 10 kedalam variabel}

x := 10;
jumlah := jumlah + 1;
str := Pascal;

{menaikkan nilai variabel jumlah sebesar 1}

{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

DasarPemrograman|UMB

Page1

ModulIVPemilihan(StatemenIF)
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 if atau case.

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

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

salah
kondisi
benar
Statemen di
dalam blok
kontrol

keluar

DasarPemrograman|UMB

Page2

ModulIVPemilihan(StatemenIF)
Adapun bentuk umum statemen if satu kasus yaitu:
{apabila hanya terdiri dari satu statemen}
if (ekspresi) then
statemen ;

{apabila terdiri atas beberapa statemen}


if (ekspresi) then
statemen ;
statemen ;
.
end;

Bila program dijalankan maka didapatkan output:


Masukkan sebuah bilangan bulat : 17
17 lebih besar dari 10

Statemen
writeln(x, ' lebih besar dari 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.

DasarPemrograman|UMB

Page3

ModulIVPemilihan(StatemenIF)
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 if dua kasus:

masuk

salah

kondisi
benar

Statemen jika
kondisi
terpenuhi

Statemen jika
kondisi tidak
terpenuhi

keluar

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:
if (kondisi) then
Statemen_jika_kondisi_benar {INGAT, tidak diakhiri ;}
else
Statemen jika kondisi salah ;
Apabila kondisi bernilai benar (true), maka yang akan dilakukan adalah statemen pertama.
Sebaliknya, apabila salah (false) maka yang akan dilakukan adalah statemen kedua, yaitu
statemen yang terdapat pada bagian else.
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

DasarPemrograman|UMB

Page4

ModulIVPemilihan(StatemenIF)
(else) 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:
if (kondisi) then
begin
Statemen_jika_kondisi_benar ; {diakhiri titik koma}
end
else
Statemen_jika_kondisi_salah ;

Bila program dijalankan maka didapatkan output:


Masukkan sebuah bilangan bulat : 4
4 merupakan bilangan GENAP
Atau
Masukkan sebuah bilangan bulat : 9
9 merupakan bilangan GANJIL

DasarPemrograman|UMB

Page5

ModulIVPemilihan(StatemenIF)
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.

masuk

Kondisi1

Kondisi2
salah

salah
benar

Statemen jika
kondisi1 benar
terpenuhi

Kondisi3

Statemen jika
kondisi2
terpenuhi

salah
benar

Statemen jika
kondisi3
terpenuhi

Statemen jika
kondisi3 tidak
terpenuhi
keluar

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

DasarPemrograman|UMB

Page6

ModulIVPemilihan(StatemenIF)
Bentuk umum pendefinisian statmen if yang memiliki tiga kasus atau lebih:
if (kondisi1) then begin
Statemen_jika_kondisi1_benar;

end else if (kondisi2) then begin


Statemen_jika_kondisi2_benar;

end else if (kondisi3) then begin


statemen_jika_kondisi3_benar;

Contoh program:
end else begin
Statemen default;

end;

DasarPemrograman|UMB

Page7

ModulIVPemilihan(StatemenIF)
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, integr,
byte, boolean). Nilai tersebut juga harus berupa nilai konstan (tidak boleh berupa variabel
maupun ekspresi).
Bentuk umum pendefinisian statemen case:
case(ekspresi) of
nilai_konstan1 : statemen1;
nilai_konstan2 : statemen2;

else
statemen_default;
end;

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

DasarPemrograman|UMB

Page8

Modul5Runtunan

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.
Dibacaduabuahnilaiintegerdarikeyboard,AdanB.Hitungjumlahkeduanyadan

hasilkalikeduanya,lalucetakhasiljumlahdankalikepirantikeluaran.

program runtunan_1;
uses wincrt;
var
a, b,c,d : integer;
begin
write('masukan nilai A : '); readln(a);
write('masukan nilai B : '); readln(b);
c:=a+b;
d:=a*b;
writeln('C= ',c,' dan D= ',d);
end.

{1}
{2}
{3}
{4}

Output:

Jikaurutanno.3dan4ditukarkansebagaiberikut:
DasarPemrograman|UMB

Page1

Modul5Runtunan

program runtunan_1;
uses wincrt;
var
a, b,c,d : integer;
begin
write('masukan nilai A : '); readln(a);
write('masukan nilai B : '); readln(b);
d:=a*b;
c:=a+b;
writeln('C= ',c,' dan D= ',d);
end.

{1}
{2}
{4}
{3}

Makaoutputyangakandikeluarkanakanbernilaisama.

Tapijikaurutanno.1dan2ditukarkansebagaiberikut:
program runtunan_1;
uses wincrt;
var
a, b,c,d : integer;
begin
d:=a*b;
c:=a+b;
write('masukan nilai A : '); readln(a);
write('masukan nilai B : '); readln(b);
writeln('C= ',c,' dan D= ',d);
end.

{4}
{3}
{1}
{2}

Makaoutputyangakandikeluarkanakanbernilaibeda.

DasarPemrograman|UMB

Page2

Modul5Runtunan

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.
program runtunan_2;
uses wincrt;
var a, b,temp : integer;
begin
a:=2;
b:=3;
writeln('A= ',a,' dan B= ',b);
temp:=a;
a:=b;
b:=temp;
writeln('A= ',a,' dan B= ',b);
end.

Outputnya:

Jikaproses(b:=temp)ditukarurutannyasepertiberikut:
program runtunantukar_2;
uses wincrt;
var a, b,temp : integer;
begin
a:=2;
b:=3;
writeln('A= ',a,' dan B= ',b);
temp:=a;
b:=temp;
a:=b;
writeln('A= ',a,' dan B= ',b);
end.

DasarPemrograman|UMB

Page3

Modul5Runtunan

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.
Program Konversi_Detik;
uses wincrt;
Const Satuhari = 60 * 60 * 24;
Var
Detik: longint;
hr, jm, mn, dt: integer;

Begin
Write ('masukkan waktu (dalam detik): ');
Readln(detik);
Writeln(detik,' detik terdiri dari');

hr := detik div satuhari;


detik := detik - hr * satuhari;

jm := detik

div 3600;

detik := detik - jm * 3600;

mn := detik div 60;


dt := detik - mn * 60;

Writeln(hr, ' hari');


Writeln(jm, ' jam');
Writeln(mn, ' menit');
Writeln(dt, ' detik');
End.

DasarPemrograman|UMB

Page4

Modul5Runtunan

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)

DasarPemrograman|UMB

Page5

Modul V Statemen Case Of


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,
integer, byte, boolean). Nilai tersebut juga harus berupa nilai konstan (tidak boleh
berupa variabel maupun ekspresi).
Bentuk umum pendefinisian statemen case:
case(ekspresi) of
nilai_konstan1 : statemen1;
nilai_konstan2 : statemen2;

else
statemen_default;
end;

Statemen default yang berada pada bagian else 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 : write('1 to 3');
2 : write('2');
end

Dasar Pemrograman Pascal | UMB

Page1

Modul V Statemen Case Of

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.
Bila program dijalankan maka didapatkan output:
Enter a digit : 1
OK
Atau
Enter a digit : a

Ini adalah huruf


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');

Dasar Pemrograman Pascal | UMB

Page2

Modul V Statemen Case Of


Bila program dijalankan maka didapatkan output:
Masukkan hari ke-1
senin
Atau
Masukkan hari ke-8

Tidak ada hari ke-8

Program dibawah ini menggunakan statement If :

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

Dasar Pemrograman Pascal | UMB

Page3

Modul V Statemen Case Of


Program ini menggunakan statement 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
LATIHAN
writeln(sampai jumpa!!!');
1. Buatlah program seperti dibawah ini dengan menggunakan Case of!
end;
end;
end.

Dasar Pemrograman Pascal | UMB

Page4

Modul V Statemen Case Of

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.

Dasar Pemrograman Pascal | UMB

Page5

Modul V Statemen Case Of


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

Dasar Pemrograman Pascal | UMB

Page6

ModulVIIStatemenPengulangan

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:

Dasar Pemrograman Pascal | UMB

Page1

ModulVIIStatemenPengulangan

Program UlangStatemen;
Uses wincrt;
Begin
Clrscr;
Writeln(Bahasa Pemograman Pascal);
Writeln(Bahasa Pemograman Pascal);
Writeln(Bahasa Pemograman Pascal);
Writeln(Bahasa Pemograman Pascal);
Writeln(Bahasa Pemograman Pascal);
Readln;
End.

Output:

Tampak pada program diatas bahwa untuk menuliskan teks Bahasa Pemograman Pascal ke
layar sebanyak lima kali, kita harus menuliskan statemen
Writeln(Bahasa Pemograman Pascal);
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 for, while...do dan repeat...until.

Bentuk Umum :
a. FOR i=v1 TO v2 DO statement
b. FOR i=v1 DOWNTO v2 DO statement

Dasar Pemrograman Pascal | UMB

Page2

ModulVIIStatemenPengulangan

id = v1

id = v1

t = v2

t = v2

false
id <= t

true

statement

id = succ (id)

FOR - TO

false
id >= t

true

statement

id = pred (id)

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.
Dasar Pemrograman Pascal | UMB

Page3

ModulVIIStatemenPengulangan
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 : integer;
Begin
For I := 1 to 5 Do
Begin
WriteLn(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:

Dasar Pemrograman Pascal | UMB

Page4

ModulVIIStatemenPengulangan

{untuk satu statemen}


for variabel_indeks := batas_awal to batas_akhir do
Statemen_yang_akan_diulang;

{untuk statemen yang banyaknya lebih dari satu}


for variabel_indeks := batas_awal to batas_akhir do
begin
Statemen_yang_akan_diulang;
Statemen_yang_akan_diulang;
.
end;
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.
program statemenfor1;
uses wincrt;
var
i :integer;
begin
clrscr;
for i:= 1 to 5 do
writeln('Bahasa Pemograman Pascal');
end.

Dasar Pemrograman Pascal | UMB

Page5

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

program statemenfor2;
uses wincrt;
var
i :integer;
begin
clrscr;
for i:= 1 to 5 do
begin
writeln('Bahasa Pemograman Pascal');
end;
end.

Dasar Pemrograman Pascal | UMB

Page6

ModulVIIStatemenPengulangan
Output:

Contoh3: program yang didalamnya terdapat proses perulangan sebanyak 2 buah statemen
dalam satu blok statemen.
program statemenfor2;
uses wincrt;
var
i :integer;
begin
clrscr;
for i:= 1 to 5 do
begin
write(i);
writeln(' Bahasa Pemograman Pascal');
end;
end.

Dasar Pemrograman Pascal | UMB

Page7

ModulVIIStatemenPengulangan
Output:

Bandingkan program contoh sebelumnya dengan program berikut ini yang tidak menggunakan
blok statemen:
program statemenfor2;
uses wincrt;
var
i :integer;
begin
clrscr;
for i:= 1 to 5 do
write(i);
writeln(' Bahasa Pemograman Pascal');
end.

Dasar Pemrograman Pascal | UMB

Page8

ModulVIIStatemenPengulangan
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 variabel_indeks := batas_awal Downto batas_akhir do
Statemen_yang_akan_diulang;

Dasar Pemrograman Pascal | UMB

Page9

ModulVIIStatemenPengulangan
Contoh program yang didalamnya menggunakan pengulangan yang bersifat menurun:
program statemenfor5;
uses wincrt;
var
i:integer;
begin
clrscr;
{melakukan pengulangan dengan indeks awal = 5}
for i:=5 downto 1 do begin
writeln(i);
end;
readln;
end.
Bila program dijalankan maka didapatkan output:

Dasar Pemrograman Pascal | UMB

Page10

MODULVIIPERULANGAN
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 :
program while-do;
uses wincrt;
Var
i : Integer;
Begin
i:=0;
While i<5 Do
Begin
Writeln(i);
i:=i+1;
End;
End.

Bila program dijalankan akan menghasilkan:


0
1
2
3
4

Dasar Pemrograman Pascal | UMB

Page1

MODULVIIPERULANGAN
Perhatikan pada bagian listing program yang menyatakan pengulangan sintak :
List Program

Penjelasan

WHILE i<5 DO
Begin

Awal program yang akan diulang

Writeln(i);

Mencetak variabel i

i:=i+1;

Penambahan variabel i agar nilainya


bertambah setiap pengulangan.

End;

Akhir program yang akan diulang

program LOOPS2(input, output);


var i, limit: integer;
begin
writeln('Please enter a limit.');
readln(limit);
while i <= limit do
begin
write(i, ' ');
i := i + 1;
end;
end.

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 :
program while-do;
uses wincrt;
Var i : integer;
Begin
i:=1;
REPEAT
Writeln(i);
i:=i+1;
UNTIL i>5;{sampai nilai i>5 maka program akan berhenti}
End.

Dasar Pemrograman Pascal | UMB

Page2

MODULVIIPERULANGAN
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 sintak pengulangan REPEAT

Writeln(i);

Mencetak variabel i

i:=i+1;

Menambah variabel i dengan satu

UNTIL i>5;

Ekspresi logika sebagai syarat berhenti

Contoh :
program berat_ideal;
uses wincrt;
var
t,m:real;
j:char;
begin
repeat
clrscr;
begin
write('Masukkan tinggi badan Anda=');readln(t);
m:=((t-100)-(0.1*(t-100)));
writeln('Berat ideal Anda= ',m:2:0);
write('Anda Ingin menghitung lagi?=');readln(j);
end;
until (j <> 'y');
end.

Dasar Pemrograman Pascal | UMB

Page3

MODULVIIPERULANGAN

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!

Dasar Pemrograman Pascal | UMB

Page4

2/16/2013

ReviewTugas
Programganjil;
useswincrt;
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;
varx,i,j:integer;
iji

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

Random
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;
var
i:Integer;
,j
begin
Randomize;
i:=Random(10);
write(i);
it (i)
j:=Random(10);
write(j);
end.

Variabel random
karena bernilai angka
maka bertipe kan
integer
RandomCommand
Nilai pada variabel i
akan diacak dari 0
0 10
Variabel i ditampilkan
setelah diacak(random)

2/16/2013

Latihan
1.Buatlahprogramperkaliandariduabuahvariabel
yangnilainyarandom,dimanapenggunamenginput
hasilperkaliannyadansistemakanmengecek
kesalahannya!
A

Nilai Adan Badalah


diberi command
random
Usermenginput
jawaban

Pesan Jawaban Anda Benar atau Jawaban Anda Salah

ORD
ORDadalahMerubahnilaisuatuvariabeldaribentuk
karakterkebentuklongint.
karakterkebentuklongint
programubah1;
useswincrt;
varx:integer;
b i
begin
write(ord('B'));
end.

2/16/2013

CHR
CHRadalah Merubah nilai dari byteke bentuk karakter
yangsesuai

i dengan
d
k d ASCII.
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

Upcase
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
forx:=1topanjangdo
t
j
d
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

String as array of char


Limited length string
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


ti
[1] is
i equall to
t the
th first
fi t character
h
t off s. s[2]
[2] is
i the
th second
d
string.
s[1]
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

Copy
Syntax
Contoh

: get an excerpt from a string.


: copy(variabel,from,howmuch)
:
Kalimat ini terdiri dari 13
karakter

Who Are You ?

Sekarang kita akan meng-copy kata You pada kalimat tersebut

Who Are You ?


1 2 3 5 6 7 9 11 13
4

8 10 12

*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
S);
End.

2/16/2013

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
Syntax
Contoh

: Insert a string inside another string from index character


: insert(source,target,index)
:

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

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);
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

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
Syntax
Contoh

: konversi numeric ke string


: str(numvar,strvar)
:

program konversi2;
uses wincrt;
var
s : string;
i : integer;
g
begin
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.
Grades = Array [1..5] of Integer;
Alpha_counters = Array ['a' .. 'z'] of Integer;
Nama = Array [1..4] of String[30];
List = Array [1..100] of 1..100;
Avg_list = Array [1..50] of Real;
Flag_list = Array [1..10] of Boolean;

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 :
Program Contoh_Array_Input;
Uses wincrt;
Var Bilangan : array[1..5] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]);
Readln;
End.

Contoh Program2 :
Program Contoh_Array_Input2;
Uses wincrt;
Var jurusan : array[1..5] of String;
Begin
ClrScr;
jurusan[1]:=Teknik Informatika;
jurusan[2]:=Sistem Informasi;
jurusan[3]:=Ekonomi;
jurusan[4]:=Teknik Elektro;
jurusan[5]:=Desain Grafis;
Writeln('nilai varibel jurusan ke 1 = ', jurusan[1]);
Readln;
End.

Contoh Program3 :
Program Contoh_Array_Input3;
Uses wincrt;
Var jurusan : array['a'..'z'] of String;
Begin
ClrScr;
jurusan['a']:='Teknik Informatika';
jurusan['b']:='Sistem Informasi';
jurusan['c']:='Ekonomi;
jurusan['d']:='Teknik Elektro';
jurusan['e']:='Desain Grafis';
Writeln('nilai varibel jurusan ke 1 = ', jurusan['a']);
Readln;
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

Program Contoh_Array_ulang1;
Uses wincrt;
Var jurusan : array[1..5] of String;
Begin
ClrScr;
jurusan[1]:=Teknik Informatika;
jurusan[2]:=Sistem Informasi;
jurusan[3]:=Ekonomi;
jurusan[4]:=Teknik Elektro;
jurusan[5]:=Desain Grafis;
for i:= 1 to 5 do
begin
writeln('nilai varibel jurusan ke-,i,= ', jurusan[i]);
end;
End.

Output :

2. WHILE DO

Program Contoh_Array_ulang2;
Uses wincrt;
Var jurusan : array[1..5] of String;
Begin
ClrScr;
jurusan[1]:=Teknik Informatika;

jurusan[2]:=Sistem Informasi;
jurusan[3]:=Ekonomi;
jurusan[4]:=Teknik Elektro;
jurusan[5]:=Desain Grafis;
i:=1;
while i <= 5 do
begin
writeln('nilai varibel jurusan ke-',i,'= ', jurusan[i]);
i:=i+1;
end;
End.

Output :

Nilai varibel array yang berasal dari inputan


Program Contoh_Array_Input;
Uses wincrt;
Var jurusan : array[1..5] of String;
i : integer;
Begin
i:=1;
write('Masukan jurusan : ');
readln(jurusan[i]);
writeln('Jurusan index ke-',i,' adalah ',jurusan[i]);
End.

Program Contoh_Array_Input;
Uses wincrt;
Var jurusan : array[1..5] of String;
i : integer;

Begin
For i:= 1 to 5 do
begin
write('Masukan jurusan : ');
readln(jurusan[i]);
writeln('Jurusan index ke-',i,' adalah ',jurusan[i]);
end;
End.

Program Contoh_Array_Input;
Uses wincrt;
Var jurusan : array[1..5] of String;
i : integer;
Begin
Write(Masukan data array yang diperlukan = );
Readln(i);
For i:= 1 to i do
begin
write('Masukan jurusan : ');
readln(jurusan[i]);
writeln('Jurusan index ke-',i,' adalah ',jurusan[i]);
end;
End.

LATIHAN
Buatlah program yang di dalamnya terdapat 3 array yaitu untuk NIM, NAMA, JURUSAN
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.
12
123
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat
dilihat pada listing program dibawah ini.
Contoh Program:
Program Deklarasi_Array_Dua_Dimensi;
Uses Crt;
Var Tabel : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
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 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen
',i,',',j,'= ',tabel[i,j]);
End;
End;
Readln;
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 :
program Romawi;
uses wincrt;
const rom : array [1..13] of string

('M','CM','D','CD','C','XC','L','XL','X','IX','V','IV','I');
des : array [1..13] of integer =
(1000,900,500,400,100,90,50,40,10,9,5,4,1);
var
bil,i: integer;
roma : string;
begin
write('Masukan suatu bilangan [1..3999] : ');
readln(bil);
if (bil>0) and (bil<4000) then
begin
for i:=1 to 13 do
begin
while (bil>= des[i]) do
begin
bil

:= bil - des[i];

roma := roma + rom[i];


end;
end;
writeln('angka romawi dari bilangan diatas adalah :',roma)
end

else
writeln('Tidak diketahui simbol romawinya...');
end.

Anda mungkin juga menyukai