8/17/2019 Komputer Dasar New
1/385
Pascal Language
Berikut disajikan pilihan bahan penyajian Kuliah.
2 3 41 5
6 7 8 10 11
12
MI!!" K#$ %
13 14 15 16
Catatan : Minggu ke-9 dipakai UTS dan ke-17 dipakai UAS
8/17/2019 Komputer Dasar New
2/385
Pascal Language
8/17/2019 Komputer Dasar New
3/385
Pascal Language
Min&&u Ke$1
"'(
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
"*(
Main Menu
8/17/2019 Komputer Dasar New
4/385
Pascal Language
MATA KULIAH : PEMROGRAMAN KOMPUTER MATA KULIAH : PEMROGRAMAN KOMPUTER
Nomor Kode / sks : SI-1210 / 2
Deskripsi Singkat : Pemrograman Kompter !erisikan
pemakaian dan penerapan program kompter pas"a#
TIU : $a%asis&a mamp menerapkan i#m
Teknik Sipi# di da#am peran"angan so't&are
kompter se"ara seder%ana (Under Dos)
8/17/2019 Komputer Dasar New
5/385
Pascal Language
B#B#+*,* ,-I' *! *K* /IB**(%
,erkeban&an Kputer
,erkeban&an Bahasa Kputer
/ia&ra *lir
,en&enalan ,r&ra ,asal
,asal harater (et
+esered rds (tandard Identiiers
8/17/2019 Komputer Dasar New
6/385
Pascal Language
,#+K#MB*!*
K-M,"'#+
8/17/2019 Komputer Dasar New
7/385
Pascal Language
PERKEMBANGAN KOMPUTER
*9alnya un&si Kputer sb&. *lat "ntuk Men&hitun&
/iteukannya *B*"( % -perasi y& apu dilakukan
:; < $ < = < %>
1642 Blaise ,asal eniptakan di&ital alulatin& ahine :perasi aritatiknya ua penjulahan saja>
1671 ?eibni@ ebuat alat hitun& :; < =>
8/17/2019 Komputer Dasar New
8/385
Pascal Language
1820 A 'has eniptakan /esktp alulatr
: ; < $ < = < % >
1833 Babba&e eranan& analytial en&ine :'idak selesai>
18)0 eran llerith Caes ,9ers DE
Ipred punh$ard business ahine ditri leh
perusahaan kputer IBM
1)42 diiptakanlah #I* :#letrni uerial Inte&ratr
*nd puter>
?uas % 167.3 sF
Knsusi ?istrik % 180.000 atts
Berat % 30 'n
#I*
8/17/2019 Komputer Dasar New
9/385
Pascal Language
1)70 Munulah berba&ai &enerai , :,ersnal puter>
ulai dari %
*'< A'< 286< 386< 486< 586 :,entiu>< ,entiu II dst..
8/17/2019 Komputer Dasar New
10/385
Pascal Language
*pa yan& bisa kputer kerjakan sekaran& GGG
rd ,ressin& (preadsheet
/atabase Hide !aes
Internet e$ail
$ #duatin
$ (iene 'ehnl&y
$ iburan
$ Berbelanja :ia Hisa ard dll.>
$ Inratin
8/17/2019 Komputer Dasar New
11/385
Pascal Language
/ari penjelasan di/ari penjelasan di atas dapat disipulkan 2 hal yaitudapat disipulkan 2 hal yaitu%
1. 'elah terjadi per&eseran un&si dari un&si a9al kputer
yan& hanya erupakan alat en&hitun& enjadi alat yan&
eiliki un&si serba &una.
2. *da dua kpnen dasar yan& utaa dala kputer% a. ard9are :,"< nitr< /+< Keybard< use dll.>
b. (t9are(t9are
(t9are dibuat den&an bahasa per&raan kputer. Ba&aiana perkeban&an bahasa kputer GGG
?ihat al. berikut
8/17/2019 Komputer Dasar New
12/385
Pascal Language
,#+K#MB*!*
B**(* K-M,"'#+
8/17/2019 Komputer Dasar New
13/385
Pascal Language
PERKEMBANGANPERKEMBANGAN
BAHASA KOMPUTERBAHASA KOMPUTER
?etak Bahasa kputer :puter ?an&ua&e> dala
knsep kunikasi antara pr&raer$kputer$user
,r&raer
puter
p.?an&
#=eutable
(t9are
"ser
puter
(t9are
8/17/2019 Komputer Dasar New
14/385
Pascal Language
Ada Dua Golongan BahasaPemrograman Kompuer !
a. ?9 leel lan&ua&es b. i&h leel lan&ua&es
GGG ahine lan&.
assebly lan&.
G -B-? lan&.
-+'+* lan&. ;; lan&.
B*(I lan&.
,*(*? lan&.
M($,asal $ 'urb ,asal er 7
"nder /s%
/#?,I lan&.
HI("*? B*(I lan&.
HI("*? ;; lan&.
"nder ind9s% Rule of Thumb:Semakin baru bahasa program
Semakin mudah dan powerful
program tersebut
8/17/2019 Komputer Dasar New
15/385
Pascal Language
Lang"ah#Lang"ah Mem$ua Program!enerally< pr&raers reate st9are by usin& the ll9in&
step$by$step deelpent press% :1> /eine the spe the pr&ra by utlinin& e=atly
9hat the pr&ra 9ill d.
:2> ,lan the seFuene puter peratins< usually by
deelpin& a l9hart :a dia&ra sh9in& the rder puter atins and data l9>.
:3> rite the de$$the pr&ra instrutins ended in a
partiular pr&rain& lan&ua&e.
:4> 'est the pr&ra.
:5> /ebu& the pr&ra :eliinate prbles in pr&ra l&i
and rret inrret usa&e the pr&rain& lan&ua&e>.
:6> (ubit the pr&ra r beta testin&< in 9hih users test
the pr&ra e=tensiely under real$lie nditins t see
9hether it perrs rretly.
8/17/2019 Komputer Dasar New
16/385
Pascal Language
/I*!+*M *?I+
l
8/17/2019 Komputer Dasar New
17/385
Pascal Language
?- *+'J/I*!+*M *?I+
l9 hart di&unakan untuk eperudah pebaaan
pr&ra.
/ala kndisi tertentu pr&raer tidak harus ebuatl9 hart bila%
,erhitun&an yan& dilakukan sederhana
Bila pr&raer telah berpen&alaan
Rule of Thumb:
Selain Flow chart perlu diperhatikan juga
penyimpanan semua perhitungan seperti
catatan-catatan perhitungan
P l L
8/17/2019 Komputer Dasar New
18/385
Pascal Language
"ntuk Men&enal l9 hart perlu diketahui dulu (ibl$(ibl
an& dipakai dala ebuat l9 hart
Mulai atau (tp
,enetapan nilai atau ,erhitun&an
Masukan atau Keluaran
Kndisi
(ybl Keteran&an
P l L
8/17/2019 Komputer Dasar New
19/385
Pascal Language
-'- ?- *+'
Misalnya kita diinta untuk enyiapkan l9hart"ntuk ke&iatan pen&aatan den&an en&&unakan
irspe< aka l9 hartnya kira$kira seperti
di halaan berikut ini%
P l L
8/17/2019 Komputer Dasar New
20/385
Pascal Language
('*+'
Menyiapkan %
1. Mirspe
2. Benda yan& diaati
Men&atur (kala Men&atur us apak Celas
es
('-,
P l L
8/17/2019 Komputer Dasar New
21/385
Pascal Language
,#!#*?*
,+-!+*M ,*(*?
P l L
8/17/2019 Komputer Dasar New
22/385
Pascal Language
?*'*+ B#?*K*!
,asal erupakan bhs. pr&ra tin&kat tin&&i yan& en&&unakan perintah berbahasa In&&ris seperti BEGIN, END,read,
write, IF, THEN, REPEAT, WHILE, DO.
,asal enerapkan aturan terstruktur yan& eun&kinkan bahasa
ini en&hasilkan pr&ra yan& jelas< dan eisien.
('+"K'"+ B**(* ,*(*?
#*/#+
B?-K /eklarasi
(tateents
P l L
8/17/2019 Komputer Dasar New
23/385
Pascal Language
Contoh !!
"enulisan "rogram "#SC#$ :PROGRAM circle(input,utput!" #Header$
%AR area, radiu& ' real" #%arDe)$
BEGIN
read(radiu&!" #&tate*ent$
area'+ -.-/01&2r(radiu&!" #&tate*ent$ write(radiu&,area! #&tate*ent$
END
Pascal Language
8/17/2019 Komputer Dasar New
24/385
Pascal Language
(I*'$(I*' B**(* ,+-!+*M
*! /II!IK* -?#,+-!+*M#+
1. I'#!+I'2. ?*+I'
3. (IM,?II'
4. #II#5. M-/"?*+I'
6. !##+*?I'
Pascal Language
8/17/2019 Komputer Dasar New
25/385
Pascal Language
,*(*? *+*'#+
(#'
Pascal Language
8/17/2019 Komputer Dasar New
26/385
Pascal Language
,*(*? *+*'#+ (#'
,asal en&&unakan huru dari * sJd :baik huru keil aupunhuru besar>< an&kaJdi&its dari 0 sJd ) dan berba&ai aa sibl
seperti yan& terdapat di ba9ah ini%
; . L :
$ % LD >
E N
J < ED O
%D P LE Q
D R .. S
Pascal Language
8/17/2019 Komputer Dasar New
27/385
Pascal Language
,*(*?
+#(#+H#/ -+/
Pascal Language
8/17/2019 Komputer Dasar New
28/385
Pascal Language
,*(*? +#(#+H#/ -+/(
,asal eiliki beberapa kataJ9rds yan& sudah distandarkan %
AND END NIL 3ET
ARRA4 FILE NOT THEN
BEGIN FOR OF TO
5A3E F6N5TION OR T4PE
5ON3T GOTO PA57ED 6NTIL
DI% IF PRO5ED6RE %AR
DO IN PROGRAM WHILE
DOWNTO LABEL RE5ORD WITHEL3E MOD REPEAT
Pascal Language
8/17/2019 Komputer Dasar New
29/385
Pascal Language
I/#'II#+(
Pascal Language
8/17/2019 Komputer Dasar New
30/385
Pascal Language
I/#'II#+(
Identiier adalah naa yan& kita berikan pada eleen pr&ra
seperti knstanta< ariabel prsedure atau pr&ra. (in&katnya
identiiers kita &unakan seba&ai pengenal .
Identiiers ditulis den&an aturan seba&ai berikut%
1. Identiier terdiri dari kpsisi huru atau an&ka.
2. Karakter pertaa tidak bleh an&ka.
3. Baik huru keil aupun huru besar bleh dipakai.
Pascal Language
8/17/2019 Komputer Dasar New
31/385
Pascal Language
Contoh !%
"enulisan &dentifier yang 'alid: (arga) *ama+rang Tabel! Tabel,!
Contoh !
"enulisan &dentifier yang tidak 'alid:
.%+rang /arakter pertama huruf
di' 0 & 1 merupakan reser'ed word
(arga ) Terdapat spasi
Pascal Language
8/17/2019 Komputer Dasar New
32/385
Pascal Language
('*/*+/
I/#'II#+(
Pascal Language
8/17/2019 Komputer Dasar New
33/385
Pascal Language
('*/*+/ I/#'II#+(
(tandard Identiier adalah Identiier yan& telah dideinisikan
sebelunya< isalnya%
a8& 9al&e pac) &in
arctan :et pa:e &2r8lean input pred &2rt
c;ar inte:er put &ucc
c;r in read te
8/17/2019 Komputer Dasar New
34/385
Pascal Language
Min&&u Ke$2
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
Main Menu
"'( "*(
Pascal Language
8/17/2019 Komputer Dasar New
35/385
Pascal Language
B#B#+*,* ,-I' *! *K* /IB**(%
ubers
(trin&s
/ata 'ypes
nstants
Hariables
#=pressins
(tateents
,redure dan untins
,asal (ynta= /ia&ras
Pascal Language
8/17/2019 Komputer Dasar New
36/385
Pascal Language
"MB#+(
Pascal Language
8/17/2019 Komputer Dasar New
37/385
Pascal Language
"MB#+(
ubers dapat ditulis dala beberapa ara di ,asal.
(ebuah nuber dapat eiliki %
1. 'anda Q;.
b. Cenis Kputer.
. Cenis Kpiler.
Pascal Language
8/17/2019 Komputer Dasar New
38/385
Pascal Language
'ipe$'ipe uber
Inte&er uber< adalah nuber yan& eiliki iri$iri sbb%
1. 'idak en&andun& tanda titik$desial.2. 'idak en&andun& tanda ekspnent.
*. Inte&er uber
*. Inte&er uber
B. +eal uber
Pascal Language
8/17/2019 Komputer Dasar New
39/385
Pascal Language
Cadi inte&er nuber terdiri dari an&ka$an&ka yan& terurut seara
sederhana :diana diuka inte&er nuber bleh di beri tanda
aritatik Q;.
Contoh %!
"enulisan &nteger *umber yang 'alid:2 ! 3! -!% .45555
Contoh %%
"enulisan &nteger *umber yang tidak 'alid:
%6!% Tanda /oma tidak diperbolehkan% Tanda titik desimal tidak diperbolehkan 7hanya untuk
Real *umbers8
!2 %2 2 Tanda spasi tidak diperbolehkan
Pascal Language
8/17/2019 Komputer Dasar New
40/385
Pascal Language
ilai Inte&er uber ter&antun& pada kputer kpiler yan&
di&unakan. ar&a aksiu Inte&er nuber dapat dilihat den&an
en&&unakan (tandard$Identiier *a.
Pascal Language
8/17/2019 Komputer Dasar New
41/385
Pascal Language
Byte (hrtint Inte&er rd ?n&int
Inte&er uber
'ipe"kuran ery
:dala byte> Can&kauan nilai
byteshrtint
inte&er
9rd
ln&int
11
2
2
4
0 .. 255$128 .. 127
$32768 .. 32767
0 .. 65535
$2147483648 .. 2147483647
Pascal Language
8/17/2019 Komputer Dasar New
42/385
Pascal Language
+eal uber< adalah nuber yan& eiliki iri$iri sbb%
1. arus Men&andun& tanda titik$desial atau<2. Men&andun& tanda ekspnent.
B. +eal uber
Cika 'anda titik$desial di&unakan aka tanda tsb. arus
berada diantara an&kaJdi&its. Cadi +eal nuber tidak dapat dia9ali atau diakhiri den&an tanda titik$desial
Contoh % "enulisan Real *umber yang 'alid:
22
3222!% 222!% !%e- !%9--222!% -!%e- -!%9-
!%222 !%e !%e3 !%9 !%93
ar&a #kspnen harus berupa inte&er.
Pascal Language
8/17/2019 Komputer Dasar New
43/385
Pascal Language
Contoh %.
"enulisan Real *umber yang tidak 'alid:
%93 Titik-desimal harus berada di antara digitangka%!93!% *ilai e;ponent tidak berupa integer
%93 Titik-desimal harus berada di antara digitangka
% 9!2 #da spasi
%9 !2 #da spasi
Pascal Language
8/17/2019 Komputer Dasar New
44/385
g g
(in&le /uble #=tended p
+eal uber
(in&le/uble
#=tended
p
48
10
8
1.5#$45 .. 3.4#385.0#$324 .. 1.7#308
1.)#$4)51 .. 1.1#4)32
$2.0#63 ;1 .. 2.0#63 $1
'ipe"kuran ery
:dala byte>Can&kauan nilai
/i&it
si&niikan
7 $ 815 $ 16
1) $ 20
1) $ 20
8/17/2019 Komputer Dasar New
45/385
Pascal Language
8/17/2019 Komputer Dasar New
46/385
g g
('+I!(
(ebuah strin& terdiri dari kupulan karakter nthnya%kata< kaliat< para&raph< an&kaJdi&its. ,enulisan strin& selalu diapit
leh tanda P
Baik huru besar aupun huru keil dapat di&unakan dala
penulisan strin&s.
Cika terdiri dari satu karakter akan lebih en&heat ery bila
di&unakan TharU :Karakter>.
(trin& biasanya di&unakan untuk untuk enulis pernyataan label
utput.
Culah aksiu karakter pada strin& biasanya 255.
8/17/2019 Komputer Dasar New
47/385
Pascal Language
8/17/2019 Komputer Dasar New
48/385
g g
/*'* ',#(
Pascal Language
8/17/2019 Komputer Dasar New
49/385
g g
/*'* ',#(
,ada 9aktu kita in&in endeklarasikan suatu ariabel< kita perlu enentukan tipe dari data :/ata types> ariabel tsb.
'ipe dari data enunjukkan suatu nilai yan& dapat di&unakan
leh ariabel yan& bersan&kutan.
Kali ini hanya diperlihatkan tipe data yan& ada di ,asal< yaitu sbb%
1. 'ipe data sederhana :siple$type data>
1.1. 'ipe data standar %
a. Inte&er nuber b. +eal nuber . hararkter
d. (trin& e. Blean1.2. 'ipe data yan& deinisikan peakainnya%
a. #nuerated b. (ubran&e
Pascal Language
8/17/2019 Komputer Dasar New
50/385
g g
2. (trutured$type data :'ipe data terstruktur>%
a. *rrays b. +erds
. iles d. (ets
3. ,inter$type data :'ipe data pinter>
Berba&ai aa tipe data di atas akan dibahas lebih dala pada
perteuan$perteuan yan& akan datan&.
Pascal Language
8/17/2019 Komputer Dasar New
51/385
-('*'(
Pascal Language
8/17/2019 Komputer Dasar New
52/385
-('*'(
Biasanya kita perlu en&hubun&kan antara sebuah data< sepertinilai nuerik atau strin& den&an identiier. Identiier tersebut kita
sebut nstantJknstanta bila nilai dari identiier tersebut bersiat
peranen : tidak berubah selaa uur pr&ra>.
Knstanta harus dideinisikan di a9al dan di luar begin-end
statement pr&ra utaa. /en&an endiinisikan suatu identiier
seba&ai knstanta< aka identiier tersebut akan eiliki tipe data
sesuai den&an nilai yan& dikenakan kepadannya.
Pascal Language
8/17/2019 Komputer Dasar New
53/385
=entuk umum pendifinisian konstanta:
5n&t name D 'alue
name adalah naa dari knstanta yan& in&in kita beri 'alueJnilai.
Contoh %5
"enulisan /onstanta yang 'alid:
5n&t )=erupaReal 2!%5
5n&t )=erupaString
5n&t )berupa/arakter
Pascal Language
8/17/2019 Komputer Dasar New
54/385
H*+I*B?#(
Pascal Language
8/17/2019 Komputer Dasar New
55/385
H*+I*B?#(
Hariable adalah identiier yan& nilainnya bisa diubah atau berubah selaa pr&ra berjalan. (etiap ariable harus di
deklarasikan sebelu bisa dipakai. /en&an endeklarasikan
suatu ariable dapat dikatakan identiier bukan sebuah knstanta.
=entuk umum pendeklarasian 'ariable:
%AR name % type
=ila ada banyak 'ariabel maka bisa juga ditulis%
%AR name!6 name%6 name* % type
Pascal Language
8/17/2019 Komputer Dasar New
56/385
Contoh %E
"endeklarasian 'ariabel:
%AR Culah(api< CulahKabin& % inte:er ar&a(api< ar&aKabin& % real
Keteran&an % &trin:"
Contoh %? "endeklarasian 'ariabel konstanta:
5ON3T ar&a,hi D 3.14
Cudul D PBahasa ,asalV
%AR 'in&&i< lebar % real
,endeklarasikan harus dibuat sejelas un&kin. aa ariabel
harus apu eberikan inrasi yan& seukupnya.
Pascal Language
8/17/2019 Komputer Dasar New
57/385
#A,+#((I-(
Pascal Language
8/17/2019 Komputer Dasar New
58/385
#A,+#((I-(
#=pressin adalah sekupulan perands :ariables< nstanta dll.>dan dihubun&kan den&an sesuatu peratr. *da dua tipe
e=pressins pada ,asal% nuerial e=pressins dan blean
e=pressins.
Contoh %@
"enulisan numerical e;pressions:
Culah(api;CulahKabin&
ar&a(atu(api Culah(api
Contoh %!2
"enulisan boolean e;pressions:
Culah(api E 50
Pascal Language
8/17/2019 Komputer Dasar New
59/385
Pascal Language
8/17/2019 Komputer Dasar New
60/385
Pascal Language
8/17/2019 Komputer Dasar New
61/385
Pascal Language
8/17/2019 Komputer Dasar New
62/385
Contoh %!%
#ssignment statements:
ta< '+ =- 1 TtalPendapatan
Contoh %!
G+T+ statements:GOTO -==
2. (trutured (tateents terdiri dari ti&a aa stateents%
a. pund stateents b. +epetitie stateent
. nditinal stateent
Pascal Language
8/17/2019 Komputer Dasar New
63/385
# Contoh %!.
Compound statements:BEGIN
read(>ari>ari!"
Lua& '+ -. 1 &2r(>ari>ari!"
atau 8i&a dituli&
Lua& '+ pi 1 &2r(>ari>ari!"
END
= Contoh %!4
Repetiti'e statements:FOR i '+ - TO -== DO write(I!"
C Contoh %!5
Conditional statements:IF Har:a ? @==== THEN
BEGIN
write(Di&cunt 7;u&u&!"END
Pascal Language
8/17/2019 Komputer Dasar New
64/385
,+-#/"+#
*/"'I-
Pascal Language
8/17/2019 Komputer Dasar New
65/385
,+-#/"+# /* "'I-(
,redure untin adalah eleen pr&ra yan& berbentuk dule. /i dala dul tersebut dapat dilah berba&ai aa
stateent.
,redure eiliki siat$siat%
1. ,redure diakses den&an ara enyebut naa predure yan&
diikuti den&an enyebut paraeter predure :ptinal>.
2. ,araeter dapat berupa inrasi yan& diperlukan predure
atau untuk kndisi tertentu< paraeter dapat di&unakan untuk
entranser inrasi dari dala predure ke luar predure.3. /ata dapat di transer antar predure.
Pascal Language
8/17/2019 Komputer Dasar New
66/385
untin eiliki siat$siat%
1. untin diakses den&an ara enyebut naa untin tersebut
:seperti enyebut ariable biasa> diikuti den&an enyebut paraeter untin :ptinal>.
2. ,araeter untin hanya erupakan inrasi yan& diperlukan
leh untin.
3. untin akan selalu en&hasilkan nilai$balik tun&&al< diana nilai$balik tersebut e9akili naa untin.
4. untin harus eiliki tipe data yan& saa den&an e=pressin
yan& ean&&il untin tersebut.
Pascal Language
8/17/2019 Komputer Dasar New
67/385
Contoh %!E
"enulisan "rocedure:
Prcedure Pe*8u)aan"
BEGIN
Writeln( Hell Wrld !"END"
BEGIN
Pe*8u)aan"
END
Pascal Language
8/17/2019 Komputer Dasar New
68/385
Contoh %!?
"enulisan Function:
Functin Ta*8a;(%ar A,B'inte:er!'inte:er"
BEGIN
Ta*8a;'+ ACB"END"
%ar 5'inte:er"
BEGIN
5 '+ Ta*8a;(-=,@=!"
Writeln(-=C@= + ,5!"
END
Pascal Language
8/17/2019 Komputer Dasar New
69/385
,*(*? ('*A
/I*!+*M(
Pascal Language
8/17/2019 Komputer Dasar New
70/385
,*(*? ('*A /I*!+*M(
,asal synta= dia&ras di&unakan untuk en&&abarkantata bahasa ,asal dala bentuk dia&ra.
letter
letter
di&it
Identier
Pascal Language
8/17/2019 Komputer Dasar New
71/385
letter letter di&it
,redure eadin&
/ia&ra$dia&ra seperti ini kuran& disukai leh be&inner
karena untuk en&&abarkan sesuatu yan& sederhana saja
perlu dia&ra yan& kpleks. aun bila sudah terbiasa akan ukup ebantu.
Pascal Language
8/17/2019 Komputer Dasar New
72/385
Min&&u Ke$3
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
Main Menu
"'( "*(
Pascal Language
8/17/2019 Komputer Dasar New
73/385
B#B#+*,* ,-I' *! *K* /IB**(%
Inte&er$'ype /ata
+eal$'ype /ata
har$'ype /ata Blean$'ype /ata
(tandard nstants
(tandard untins
Mre *but #=pressins
'he assi&nent (tateent
Pascal Language
8/17/2019 Komputer Dasar New
74/385
I'#!#+ ',# /*'*
Pascal Language
8/17/2019 Komputer Dasar New
75/385
I'#!#+ ',# /*'*
(ebelunya telah dibiarakan en&enai apa yan& diaksud
inte&er. (ekaran& akan kita knsentrasikan pada peratr yan& dapat di&unakan leh data inte&er.
-peratr yan& di&unakan untuk elaksanakan perasi
nuerik disebut arithati peratr.
; ,enabahan Inte&er
Inte&er
$ ,en&uran&an Inte&er Inte&er
,erkalian Inte&er
Inte&er
J ,eba&ian Inte&er
Inte&er Di Men hilan kan Inte er
*rithati-peratr ,urpse
'ype -perands
'ype +esultant
Pascal Language
8/17/2019 Komputer Dasar New
76/385
Bila a'+ - dan 8'+ / aka%
a ; b
a $ b
a b
a Di b
a Md ba J b
#=pressin asil
18 : inte&er >8 : inte&er >
65 : inte&er >
2 : inte&er >
3 : inte&er >
2.6 : real >
Pascal Language
8/17/2019 Komputer Dasar New
77/385
*turan yan& berlaku untuk 2 buah data inte&er yan& diperasikan%
1. asil akan bernilai psiti bila kedua perand bernilai psiti.
2. -peratr : J < Md < Di > en&haruskan perand kedua tidak
bernilai 0.
Pascal Language
8/17/2019 Komputer Dasar New
78/385
+#*?$',# /*'*
Pascal Language
8/17/2019 Komputer Dasar New
79/385
+#*?$',# /*'*
+eal$'ype /ata erujuk pada data ites yan& e9akili nilai
real< isalnya nstanta< ariable< untin< dan e=pressin.*da 4 arithati peratr untuk real$type%
; ,enjulahan real real
$ ,en&uran&an real real
,erkalian real real
J ,eba&ian real real
*rithati
-peratr ,urpse'ype
-perands
'ype
+esultant
Pascal Language
8/17/2019 Komputer Dasar New
80/385
Inte&er peratr Di dan Md tidak dapat di&unakan den&an
real$type data.
*turan yan& berlaku untuk 2 buah data real yan& diperasikan%
1. asil akan bernilai psiti bila kedua perand bernilai psiti.
2. -peratr : J > en&haruskan perand kedua tidak bernilai 0.
3. Cika salah satu adalah data inte&er hasil perasinya adalah real.
Pascal Language
8/17/2019 Komputer Dasar New
81/385
*+$',# /*'*
Pascal Language
8/17/2019 Komputer Dasar New
82/385
*+$',# /*'*
har$type data adalah strin& yan& terdiri dari 1 karakter saja.
Karakter$karakter yan& bisa dipakai di ,asal terdapat dalaT *(II harater set T.
Contoh #SC&& character set adalah sebagai berikut:
32 blank
38
43 ;
4) 1
60 L
63 G
65 *
)7 a
*(II alue harater
Pascal Language
8/17/2019 Komputer Dasar New
83/385
(ekilas terlihat bah9a har$type data dapat berisi huru ulai
dari a sapai den&an @ : baik huru besar aupun huru keil >< ju&a dapat berisi di&it :0 sapai den&an )> dan speial harater
: < < ; < dan lain$lain>.
Contoh !Char-type data items yang 'alid:
P p P < P 5 P < P t P < V P < dan lain$lain.
Pascal Language
8/17/2019 Komputer Dasar New
84/385
B--?#*$',# /*'*
Pascal Language
B--?#* ',# /*'*
8/17/2019 Komputer Dasar New
85/385
B--?#*$',# /*'*
Blean$type data adalah nilai kebenaran yan& hanya bernilai
benar :true> atau salah :alse>. ilai true dikdekan den&an nilai 1< sedan&kan alse dikdekan
den&an nilai 0.
Blean$type e=pressin dibentuk den&an en&&abun&kan
perands :den&an tipe yan& saa > den&an relatinal peratr.*da 7 buah relatinal peratr di ,asal%
D saa den&an
LE tidak saa den&anL kuran& dari
LD kuran& dari saa den&an
E lebih dari
ED lebih dari saa den&an
+elatinal -peratr *rti
8/17/2019 Komputer Dasar New
86/385
Pascal Language
8/17/2019 Komputer Dasar New
87/385
Contoh =oolean 9;pression dengan operand character:
isal% c;-'+ p
c;@'+ T
aka%
h1Dh2 alse
h2D P'V true
P(VLEh1 true
h1Lh2 true
#=pressin ilai
Pascal Language
, l iliki 3 l ik / l ik
8/17/2019 Komputer Dasar New
88/385
,asal eiliki 3 peratr l&ika. /ua peratr l&ika
di&unakan untuk en&kbinasikan blean$type perands
: untuk ebentuk blean$type e=pressin > sedan& satu
peratr l&ika di&unakan untuk ebalik har&a blean
perand.
-peratr ?&ika tersebut adalah%
Or #=pressin bernilai benar bila salah satu perand bernilai benar.
And #=pressin bernilai benar hanya jika kedua perand bernilai benar.
Nt -peratr ini di&unakan ebalik har&a blean
perand.
-peratr *rti
Pascal Language
8/17/2019 Komputer Dasar New
89/385
Contoh %
:10E0> And :10L20>
:10E0> And :10L5>
:10E0> Or :10L5>
:10L0> Or :10E20>
Nt :10L6>
Nt :5E0>
#=pressin ilai
true
alse
true
alse
true
alse
Pascal Language
8/17/2019 Komputer Dasar New
90/385
('*/*+/ -('*'(
Pascal Language
8/17/2019 Komputer Dasar New
91/385
('*/*+/ -('*'(
,asal eiliki beberapa standard identiier yan& e9akilinstanta.
Misalnya% *a
8/17/2019 Komputer Dasar New
92/385
('*/*+/ "'I-(
Pascal Language ('*/*+/ "'I-(
8/17/2019 Komputer Dasar New
93/385
(tandard untin biasa ju&a disebut seba&ai intrinsic atau
build-in untin.
*da yan& eneria inrasi :paraeter> dan en&hasilkan
data yan& saa tipenya< ada ju&a yan& eneria inrasi
:paraater> dan en&hasilkan data yan& berbeda tipenya.
Beberapa un&si ditunjukkan di ba9ah ini%
abs:=> en&hitun& nilai abslute inte&er atau saa den&an = dari = real
s:=> en&hitun& nilai sinus = inte&er atau real : = dala radian > real
pred:=> enentukan har&a sebelu = inte&er enentukan har dari har&a = inte&er har
untin ,urpse 'ype 'ype
paraeter :=> result
Pascal Language
8/17/2019 Komputer Dasar New
94/385
Contoh
hr:65> D P*V
rd:P*V> D 65
pred:3> D 2
pred:alse> D true
rund:2.3> D 2rund:2.7> D 3
trun:2.3> D 2
trun:2.7> D 2
Pascal Language
8/17/2019 Komputer Dasar New
95/385
M-+# *B-"' #A,+#((I-
Pascal Language
M-+# *B-"' #A,+#((I-
8/17/2019 Komputer Dasar New
96/385
M-+# *B-"' #A,+#((I-
Kalau dala sebuah e=pressin tanda kurun& disertakan<
akan tidak terlalu sulit ba&i kita elihat urutan perhitun&ankarena perasi yan& ada di dala tanda kurun& akan selalu
didahulukan.
Ba&aiana bila tanda kurun&nya tidak disertakanG
-peratr ,asal asin&$asin& eiliki urutan priritas.
Contoh .
2;33 /i ,asal e=pressin tersebut bernilai 11<
jadi bukan : 2 ; 3 > D 5 lalu 5 3 D 15
Pascal Language
8/17/2019 Komputer Dasar New
97/385
1 :hi&hest> t
2 J /i Md *nd 3 ; $ -r
4 :l9est> D LE L LD E ED I
,riritas -peratr
*turan tabahan dala penulisan nuerial dan blean e=pressin%1. (eua identiier harus diberi nilai sebelu unul dala
e=pressin.
2. Bila di a9al identiier diberi tanda inus< aka saa den&an
en&alikan identier tersebut den&an $1.Cadi $a b saa den&an $1 a b
3. -peratr arithati tidak bisa unul seara berurutan.
Cadi e=pressin a $ b tidak dibenarkan< seharusnya a : $b >
Pascal Language
8/17/2019 Komputer Dasar New
98/385
4. -perasi arithati tidak bisa seuanya dipakai< isalnya 2:=;y>
benar seara arithati< naun penulisan di dala ,asal
harusnya 2 : = ; y>5. -perasi arithati tidak bisa di&unakan pada har atau
blean$type data.
Cadi %
P*V ; PBV dan
:i D 1> ; :i ED3> tidak diperkenankan.
6. Culah kurun& kiri harus saa den&an julah kurun& kanan.
: tanda kurun& harus sepasan&>
8/17/2019 Komputer Dasar New
99/385
Pascal Language
*((I!M#' ('*'#M#'
8/17/2019 Komputer Dasar New
100/385
*((I!M#' ('*'#M#'
*ssi&nent stateent adalah stateent sederhana yan&
di&unakan untuk eberi nilai data ite ke ariabel.
aria8el '+ dataite*
ditulis dala ,asal
ariabel data ite
Contoh 4
a'+ /"
a'+ aC"
sapai disini har&a a D 11
Pascal Language
8/17/2019 Komputer Dasar New
101/385
Min&&u Ke$4
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
Main Menu
"'( "*(
Pascal Language
8/17/2019 Komputer Dasar New
102/385
B#B#+*,* ,-I' *! *K* /IB**(%
Input dan -utput iles
+#*/ (tateent
+#*/? (tateent
#-? dan #- untin
+I'# (tateent
+I'#? (tateent
Pascal Language
8/17/2019 Komputer Dasar New
103/385
I,"' dan -"',"' I?#(
Pascal Language
I,"' dan -"',"' I?#(
8/17/2019 Komputer Dasar New
104/385
I,"' dan -"',"' I?#(
/*'* I,"' /*'* -"',"'*nalisa
Misalnya%
'erdapat pr&ra en&hitun& luas lin&karan. /an pada layar kputer terdapat tulisan
Ma&u))an ariari+
Cadi disini diperlukan data input. Maka kita beri suatu
nilai. (etelah itu aka ,asal akan en&hitun& saltersebut< dan akan en&hasilkan suatu data utput
:bisa berupa tulisan di layar atau dala bentuk iles>.
Pascal Language
8/17/2019 Komputer Dasar New
105/385
+#*/ ('*'#M#'
8/17/2019 Komputer Dasar New
106/385
Pascal LanguageContoh .%
8/17/2019 Komputer Dasar New
107/385
%ar a,8' real"
i,' inte:er"
p,2' c;ar
read(a,8,i,,p,2!"
Cika nilai yan&
diberikan%
Hariable a b i j p F
ilai 12500 $14.8 5 $) = y
Pascal Language
8/17/2019 Komputer Dasar New
108/385
Maka penulisan untuk inputan%
12500.0 $14.8 5$)=y12500 $14.8 ;5 $)=y
atau
1.25e4 $1.48e1 5 $)=y
atatan%
read(a,8,i,,p,2!"
bisa ju&a ditulis%
read(a,8,i!"
read(,p,2!"
Pascal Language
8/17/2019 Komputer Dasar New
109/385
+#*/? ('*'#M#'
Pascal Language
+#*/? ('*'#M#'
8/17/2019 Komputer Dasar New
110/385
+#*/? ('*'#M#'
(tateent readln un&sinya hapir saa den&an stateent read.
,erbedaannya ialah pada readln psisi pebaaan data ite berikutnya berada 1 baris di ba9ah baris saat readln dipan&&il<
sedan&kan read akan enepatkan psisi pebaaan data ite
berikutnya pada baris yan& saa.
Contoh .
%ar p-,p@,p,p.' inte:er"
read(p-,p@!"
read(p,p.!"
Pascal LanguageBila input adalah%
8/17/2019 Komputer Dasar New
111/385
1 2 3 4
5 6 7 8
aka p1
8/17/2019 Komputer Dasar New
112/385
#-? dan #- "'I-
8/17/2019 Komputer Dasar New
113/385
Pascal Language
(eara dia&ranya dapat di&abarkan seba&ai berikut%
8/17/2019 Komputer Dasar New
114/385
/i teukan akhir ile baaG
?akukan
perintah$perintah
*bil data dari ile
(elesai
'idak
a
"ntuk enentukan akhir ile tersebut di&unakan un&si #-.
-perasi ile akan dibahas pada perteuan$perteuan yan&
akan datan&.
Pascal Language
8/17/2019 Komputer Dasar New
115/385
+I'# ('*'#M#'
Pascal Language
+I'# ('*'#M#'
8/17/2019 Komputer Dasar New
116/385
+I'# ('*'#M#'
,esan yan& terdapat pada layar< atau hasil perhitun&an dapat
ditunjukkan den&an stateent 9rite. (elain pada layar< 9rite ju&adi&unakan untuk enulis ile : hal ini akan dibahas pada
perteuan$perteuan yan& akan datan&>.
,enulisan stateent 9rite adalah seba&ai berikut%write(utput data ite*&!"
-utput data ites dapat berupa strin&s< nuerial nstant< har&a
suatu ariable atau e=pressin. (etiap strin& harus ditulis diantara
tanda apstrphe : P >. Bila data ite lebih dari dua< aka harus
dipisahkan den&an tanda ka.
8/17/2019 Komputer Dasar New
117/385
Pascal Language
8/17/2019 Komputer Dasar New
118/385
Contoh .?
write(HALLO ,PA35AL!"
asilnya adalah% *??- ,*(*?
Contoh .@
write(Hall,PA35AL!"
asilnya adalah% all,*(*?
Pascal LanguageContoh .!2
%ar a 8'real"
8/17/2019 Komputer Dasar New
119/385
%ar a,8'real"
i,'inte:er"
p,2'c;ar"
a'+-@/==="
8'+-."
i'+/"
'+0"
p'+J"2'+4"
write( a+,a, 8+,8, i+,i!"
write( +,, p+,p, 2+,2!"
Ha&ilnKa ' a+ -@/=====EC=. 8+-.=====EC=- I+ / + 0 p+J 2+4
'erlihat bah9a seara deault inte&er enyediakan ruan& ksn&
sekitar 8< sedan& seara deault real enyediakan ruan& ksn&
sekitar 14.
Pascal Language
8/17/2019 Komputer Dasar New
120/385
+I'#? ('*'#M#'
Pascal Language
+I'#? ('*'#M#'
8/17/2019 Komputer Dasar New
121/385
+I'#? ('*'#M#'
(tateent 9riteln seara identeti saa den&an stateent 9rite<
keuali pada 9riteln< psisi ntrl berada satu baris di ba9ah
baris dipan&&ilnya stateent.
,enulisan stateent 9riteln adalah seba&ai berikut%writeln(utput data ite*&!"
-utput data ites berisi saa den&an utput data ites pada
stateent 9rite.
Pascal LanguageContoh .!!Bila ditulis%
8/17/2019 Komputer Dasar New
122/385
writeln(Bari& -!"
writeln"
writeln(Bari& @!"asilnya adalah%
Baris 1
Baris2
Contoh .!%Bila ditulis%
writeln(Bari& -!"
writeln(Bari& @!"asilnya adalah%
Baris 1
Baris2
Pascal Language
Contoh .!
8/17/2019 Komputer Dasar New
123/385
writeln(PA35AL!"
writeln(-@!"asilnya adalah%
,*(*?
1237
Contoh .!.
) '+ A76
writeln()!"
writeln(P6LANG!"
asilnya adalah%*K"
,"?*!
Pascal Language
Main Menu
8/17/2019 Komputer Dasar New
124/385
Min&&u Ke$5
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
Main Menu
"'( "*(
Pascal Language
8/17/2019 Komputer Dasar New
125/385
B#B#+*,* ,-I' *! *K* /IB**(%
-+M*''#/ -"',"'
nth$nth
,lannin& a ,asal ,r&ra
ritin& a ,asal ,r&ra #nterin& 'he ,r&ra int 'he puter
Pascal Language
8/17/2019 Komputer Dasar New
126/385
-+M*''#/ -"',"'
Pascal Language
-+M*''#/ -"',"'
8/17/2019 Komputer Dasar New
127/385
alaupun bentuk deault dian&&ap ukup untuk enapilkan
bentuk pada pr&ra yan& sederhana< tetapi untuk pr&ra$ pr&ra aplikasi dibutuhkan bentuk rat tertentu yan& harus
diatur kebali.
"ntuk en&atur rat tapilan den&an prsedur standar 9riteatau 9riteln diper&unakan paraeter$paraeter seba&ai berikut%
1. ,araeter har%n
Contoh 4!
a'+A"
writeln(a'/!"
asilnya adalah% *
ada 5 buah karakter
Pascal Language
2. ,araeter strin&%n
8/17/2019 Komputer Dasar New
128/385
Contoh 4%
a'+Pa&cal"writeln(Ba;a&a,a'-=!"
asilnya adalah% Bahasa ,asal
ada 10 buah karakter
3. ,araeter inte&er%n
Contoh 4
a'+@/"
writeln(>u*la;,a'!"asilnya adalah% Culah 275
ada 6 buah karakter
Pascal Language
4a. ,araeter real%n
8/17/2019 Komputer Dasar New
129/385
Contoh 4.
a'+-@./"writeln(Nilai real +,a'-@!"
asilnya adalah% ilai real D 1.23450#;02
b. ,araeter real%n%
Contoh 44
a'+-@./"
writeln(Nilai real +,a'-@'!"asilnya adalah% ilai real D 123.450
3 di&it
12 di&it
12 di&it
Pascal Language
8/17/2019 Komputer Dasar New
130/385
5. ,araeter blean%n
Contoh 45
a'+true"
writeln(a'-=!"
asilnya adalah% true
10 karakter
Pascal Language
8/17/2019 Komputer Dasar New
131/385
-'-$-'-
Pascal Language
'abel berikut enunjukkan 234 dan $234 dala berba&ai rat%
8/17/2019 Komputer Dasar New
132/385
%4
%5
%6
%1
%?en
234
234
234
234
234
W234
WW234
WWW234
234
WW234 :Cika ?en D 5>
ar&a rat -utput tapilan
Pascal Language
8/17/2019 Komputer Dasar New
133/385
%4
%5
%6
%1
%?en
$234
$234
$234
$234
$234
$234
W$234
WW$234
$234
W$234 :Cika ?en D 5>
ar&a rat -utput tapilan
Pascal Language
'abel berikut enunjukkan har&a = yan& bertipe real den&an
rat %5 %1
8/17/2019 Komputer Dasar New
134/385
rat %5 %1
)).42
0.123
$).53
$25.55
)).)))
))).43
$)).4
WW0.1
W$).5
$25.6
100.0
))).4
ar&a = -utput tapilan
Pascal Language
'abel berikut enunjukkan data real yan& dirat
8/17/2019 Komputer Dasar New
135/385
%5 %2
%4 %2
%5 %3%4 %2
%8 %3
%3 %1
%)
3.1415)
3.1415)
3.1415)0.1234
$0.006
25.876
$0.006
W3.14
3.14
3.1420.12
WW$0.006
25.)
$6.00#$03
ar&a rat -utput tapilan
Pascal Language
8/17/2019 Komputer Dasar New
136/385
%4 %2
%5 %1
%8 %5%4 %2
%8 %5
%4 %2
%)
3.1415)
3.1415)
3.1415)$0.006
$0.006
$124.3123
$3.1415)
3.14
WW3.1
W3.1415)$0.01
$0.00600
$124.31
$314#;00
ar&a rat -utput tapilan
8/17/2019 Komputer Dasar New
137/385
Pascal Language
,?*I! * ,*(*? ,+-!+*M
8/17/2019 Komputer Dasar New
138/385
/ala erenanakan suatu pr&ra< pr&raer dapateninjau asalah seara &lbal. (etelah itu< lalu eba&i
asalah &lbal tersebut enjadi kasus$kasus yan& lebih keil
untuk keudian diselesaikan. ,eikiran seperti ini disebut
den&an T tp$d9n T pr&rain&.
?an&kah pertaa yan& dilakukan adalah den&an enulis seara
inral ruus$ruus aupun aspek$aspek lain< keudian
dibuat pr&ra utline :bahasa sehari$hari>. Key9rds utaa
,asal yan& dipakai adalah ,+-!+*M< B#!I< #/.Key9rds tersebut di&unakan untuk ebuat pseud de.
Pascal Language
Contoh 4E
, j l i
8/17/2019 Komputer Dasar New
139/385
prie D 1.5 st st D i=edst ; : basest area > ; : n e=trast area>
area D πd2J4
diana% d D diaeter pi@@a
,enjualan pi@@a.
(ebuah tk pi@@a enjual pi@@a dala 3 ukuran% sall< ediu<
lar&e. ,eiliknya berkein&inan untuk ebuat pr&rakputer. ,i@@a dapat dijual den&an del standar :saus keju>
bila ditabah den&an apuran lain aka akan ada biaya e=tra.
'iap aa apuran tabahan dian&&ap eiliki har&a yan&
saa. Biaya pi@@a adalah 1.5 kali har&a ttal.ar&a ttal pi@@a ter&antun& dari ukuran luas pi@@a< i=ed st<
e=trast.
Maka dapat ditulis%
Pascal Language,enulisan ,r&ra -utline adalah seba&ai berikut%
1. 'entukan berba&ai kpnen biaya.
8/17/2019 Komputer Dasar New
140/385
2. Baa diaeter pi@@a.
3. itun& luas pi@@a.4. itun& har&a ttal dan har&a jual.
5. 'ulis ja9aban akhir den&an se&ala keteran&an yan& diperlukan.
,seud denya adalah seba&ai berikut%
,+-!+*M ,I*Q tentukan kpnen biaya dala bentuk knstanta S
B#!I
Q baa diaeter dan julah apuran tabahan SQ itun& luas pi@@a< ttal biaya< dan har&a jual S
Q 'apilkan hasil S
#/.
Pascal Language
Mdel perenanaan pr&ra yan& lain adalah pendekatan
8/17/2019 Komputer Dasar New
141/385
p p & y & p
T btt$up T. ,erenanaan ini diperuntukkan J k buat
pr&ra yan& dulnya ditentukan dahulu.,ada uunya serin&kali kita &unakan 2 ara diatas seara ber$
saa$saa. akni< btt$up pada 9aktu enyiapkan dul
8/17/2019 Komputer Dasar New
142/385
+I'I!
* ,*(*? ,+-!+*M
Pascal Language
+I'I! * ,*(*? ,+-!+*M
8/17/2019 Komputer Dasar New
143/385
+I'I! * ,*(*? ,+-!+*M
(etelah utline dan pseud de dibuat aka lan&kah selanjutnyaadalah enulis pr&ra ,asal.
,ada nth penjualan pi@@a< isalnya ditentukan%
i=ed st D X 0.75 per pi@@a
base st D X 0.01 per inh perse&i
st setiap tabahan apuran D X 0.0025 per inh perse&i
aka dapat dituliskan pr&ra pasalnya seba&ai berikut%
Pascal Language
PROGRAM PIA(input,utput!"
i - - 0
8/17/2019 Komputer Dasar New
144/385
5ON3T pi+-.-/0"
9i
8/17/2019 Komputer Dasar New
145/385
,r&ra ,asal tentan& penjualan pi@@a dapat dibuat lebih enarik den&an eperbaiki tapilan berupa penabahan
kentar dan tabahan$tabahan keteran&an.
Pascal Language
8/17/2019 Komputer Dasar New
146/385
#'#+I! '# ,+-!+*M
I'- '# -M,"'#+
8/17/2019 Komputer Dasar New
147/385
Pascal Language
Main Menu
8/17/2019 Komputer Dasar New
148/385
Min&&u Ke$6
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
"'( "*(
Pascal Language
B#B#+*,*,-I' *! *K* /IB**(%
8/17/2019 Komputer Dasar New
149/385
B#B#+*,* ,-I' *! *K* /IB**(%
pilin& #=eutin& the pr&ra
#rrr /ia&ntis
?&ial /ebu&&in&
hile$/ (truture +epeat$until (truture
Pascal Language
8/17/2019 Komputer Dasar New
150/385
-M,I?I! #A#"'I!
'# ,+-!+*M
Pascal Language
-M,I?I! #A#"'I! '# ,+-!+*M
8/17/2019 Komputer Dasar New
151/385
,ada perteuan yan& lalu< ahasis9a diajak untuk enulis
pr&ra pasal ke dala pasal editr. (ekaran& ahasis9a akan
diajak untuk en&enal bah9a pentin& untuk ebuat pr&ra
kita ke dala bentuk rat .e=e. Karena den&an rat tersebut
aka pen&&una yan& in&in eakai pr&ra kita tidak harus
ean&&il pr&ra ,asal dahulu< naun dapat seara lan&sun&dari ds den&an ara ean&&il naa pr&ra kita.
"ntuk en&ubah pr&ra kita a&ar enjadi pr&ra yan&
e=eutable< aka kita ebutuhkan compiler .,ada pr&ra ,asal ersi 5 atau lebih tin&&i< piler lan&sun&
disertakan dala pasal editr.
Pascal Language
?an&kah$lan&kahMeng compile program
8/17/2019 Komputer Dasar New
152/385
1. Men&&unakan pile Menu :dapat diaktikan den&an pakai
htkey #lt - C >.
2. (etelah subenu dari pile enu tapil di layar< tekanlah
tbl / untuk erubah diretin : hasil kpilasi > ke disk.
3. 'ekan tbl untuk eulai prses kpilasi.
4. (etelah prses kpilasi selesai< aka pr&ra aaile.pas
anda telah diterjeahkan ke bahasa esin dan disipan di disk
den&an naa aaile.e=e.
Meng#compile program!
Pascal Language
8/17/2019 Komputer Dasar New
153/385
#++-+ /I*!-('I(
Pascal Language
#++-+ /I*!-('I(
8/17/2019 Komputer Dasar New
154/385
Bila di dala pr&ra kita terdapat kesalahan synta=< ,asal akan
eberikan perin&atan berupa pesan$pesan yan& disapaikan didala bahasa In&&ris. Cadi pesan kesalahan dapat ebantu kita
seba&ai pr&raer di dala eperbaiki pr&ranya.
,ada saat terjadi run-time error aka data harus diasukkanulan&. ?ihat nth di ba9ah ini%
%ar i' inte:er"
Be:in
write(Ma&u))an nilai inte:er + !" readln(i!"
End
Contoh E!
Pascal Language
Cika pr&ra dijalankan dan anda easukkan nilai real seperti%
Masukkan nilai inte&er D 1.2
8/17/2019 Komputer Dasar New
155/385
Masukkan nilai inte&er 1.2
+untie errr 106 at 0000%005
'apak terjadi runtie errr dan prses pr&ra dihentikan.
"ntuk en&atasinya di&unakanlah piler diretie QXI$S yan&
di&unakan untuk ebiarkan kesalahan yan& terjadi pada prses
inputJutput sehin&&a tidak terjadi runtie errr. Keudian ju&adiikuti den&an piler diretie QXI;S yan& di&unakan untuk
en&ebalikan ke keadaan seula. Kesalahan dari prses IJ-.
(elanjutnya dapat dideteksi dari un&si standar IJ- +esult.
un&si ini akan en&hasilkan nilai inte&er tentan& status dariperasi IJ-. Bila IJ- +esult bernilai lebih besar dari 0 aka telah
terjadi kesalahan prses IJ-.
Pascal Language?ihat nth dari peakaian QXI$S dan QXI;S %
atatan % pada nth di ba9ah ini< dipakai struktur repeat$until
8/17/2019 Komputer Dasar New
156/385
Har
i % inte&er asilI- % inte&er
Be&in
+epeat
QXI$S
9rite:PMasukkan nilai inte&er D P> readln:i>
QXI;S
asilI-%D I-+esult
i asilI- LE0 then
Be&in9riteln:P/ata yan& diasukkan salah< ulan&i YV>
end
"ntil asilI- D 0
#nd.
:akan dijelaskan den&an lebih detail pada subbab yan& akan datan&>.
Contoh E%
Pascal Language
8/17/2019 Komputer Dasar New
157/385
?-!I*? /#B"!!I!
Pascal Language ?-!I*? /#B"!!I!
( b l kit d h l t t d t
8/17/2019 Komputer Dasar New
158/385
(ebelunya kita sudah en&enal suatu synta= errr yan& dapat
dideteksi leh pr&ra ,asal< selanjutnya kita akan en&enall&ial errr.
,ada prinsipnya l&ial errr lebih sulit untuk dideteksi< karena
en&in&at pr&ra akan tetap berjalan den&an nral : tanpa ada
pesan kesalahan > eskipun terjadi kesalahan l&ika.*da beberapa pint pentin& dala elakukan l&ial debu&&in&%
1. /etetin& #rrr.
?an&kah pertaa yan& bisa dilakukan dala enari l&ial
errr ialah den&an ebandin&kanJ en&etes pr&ra kita
den&an seperan&kat data yan& ja9abannya telah tersedia. Kalau
data yan& diasukkan perlu ariasi aka dapat ju&a eakai
bantuan pr&ra (preadsheet seperti #=el< ?tus 123< atau
den&an bantuan kalkulatr.
Pascal Language
atatan% untuk pr&ra yan& tin&kat kesulitannya tidak terlalu
8/17/2019 Komputer Dasar New
159/385
tin&&i< aka pr&ra spread sheet dapat di&unakan untuk
en&eek tiap tahap pekerjaan.
2. rretin& #rrr.
Ketika kesalahan dipastikan ada< aka perlu dilakukan suatu
pen&eekan tiap tahapJ baris perintah dari pr&ra kita. ,en&eekan ini dapat dilakukan karena ,asal eiliki enu
debu&&in& yan& handal. Mahasis9a diinta untuk epraktek
kan sendiri tahap debu&&in&.
8/17/2019 Komputer Dasar New
160/385
Pascal Language
8/17/2019 Komputer Dasar New
161/385
I?#$/- ('+"'"+#
Pascal Language I?#$/- ('+"'"+#
,en&ulan&an suatu stateent diperlukan se9aktu ebuat suatu
8/17/2019 Komputer Dasar New
162/385
,en&ulan&an suatu stateent diperlukan se9aktu ebuat suatu
ebuat pr&ra.
nth yan& palin& sederhana isalnya%
Kita berkein&inan enulis all sebanyak dua kali. Maka dapat
den&an udah den&an ara enulis%
writeln(Hall!"
writeln(Hall!"
'api ba&aiana bila kita in&in enulis all sebanyak 15 kali<
200 atau 1000 kali.
Maka untuk enyelesaikan persalan tersebut< kita dapat pakai beberapa ara untuk elakukan pen&ulan&an pada ,asal.
/an saat ini akan dibahas den&an en&&unakan hile$/
struture.
8/17/2019 Komputer Dasar New
163/385
Pascal Language%AR
i ' inte:er"
Contoh E.
8/17/2019 Komputer Dasar New
164/385
BEGIN
i '+ =" WHILE i / DO
Be:in
Writeln(i!"
i '+ i C-"
End"
END
Bila pr&ra ini dijalankan< akan didapatkan hasil%
0
12
3
4
Pascal Language
,enjelasan%
,erulan&an dari hile akan terus dikerjakan bila kndisinya asih
8/17/2019 Komputer Dasar New
165/385
,erulan&an dari hile akan terus dikerjakan bila kndisinya asih
benar. /ala hal ini kndisinya adalah i dan bila nilai i asih ku$
ran& dari 5< berarti kndisi di dala hile asih terpenuhi dan pe$
rulan&an akan selesai setelah nilai i lebih besar atau saa den&an
5.
Pascal Language
8/17/2019 Komputer Dasar New
166/385
+#,#*'$"'I? ('+"'"+#
Pascal Language +#,#*'$"'I? ('+"'"+#
+epeat$until struture eiliki un&si yan& saa den&an 9hile$d
8/17/2019 Komputer Dasar New
167/385
+epeat until struture eiliki un&si yan& saa den&an 9hile d
struture. ,erbedaan yan& tapak adalah psisi penyeleksian suatu
kndisi. ,ada 9hile$d struture< kndisi diek pada a9al< sedan&
pada repeat$until struture kndisi diek di akhir.
nth ini epunyai del yan& saa seperti pada nth 7.3.
aitu in&in enapilkan an&ka 1< 2< Z
8/17/2019 Komputer Dasar New
168/385
BEGIN
i '+ =" Repeat
i '+ i C-"
Writeln(i!"
6ntil i + /"END
Bila pr&ra ini dijalankan< akan didapat hasil%
1
23
4
5
Pascal Language
,erbedaan antara +#,#*'$"'I? (truture den&an I?#$/-
(truture adalah seba&ai berikut%
8/17/2019 Komputer Dasar New
169/385
1. ,alin& sedikit stateent$stateent di dala perulan&an +#,#*'
$"'I? (truture diprses sekali< karena seleksi kndisi ada pada ba&ian ba9ah. (edan&kan pada I?#$/- (truture dikerjakan
nl kali karena seleksi kndisinya ada di ba&ian atas.
2. /i dala +#,#*'$"'I? struture tidak diperlukan en&&una$
kan blk stateent Be&in dan #nd< karena batas yan& jelas telah ada di dala +#,#*'$"'I? struture.
Pascal Language
Main Menu
8/17/2019 Komputer Dasar New
170/385
Min&&u Ke$7
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
"'( "*(
Pascal Language
B#B#+*,* ,-I' *! *K* /IB**(%
8/17/2019 Komputer Dasar New
171/385
-+ (truture
ested ntrl (truture
I (truture
ase (truture !t (tateent
Pascal Language
8/17/2019 Komputer Dasar New
172/385
-+ ('+"'"+#
Pascal Language
-+ ('+"'"+#
(truktur -+ di&unakan lpin& seara unnditinal di dala
8/17/2019 Komputer Dasar New
173/385
(truktur -+ di&unakan lpin& seara unnditinal di dala
,*(*?. Ini berarti struktur -+ di&unakan untuk elakukan pe$rulan&an yan& julah perulan&annya telah ditentukan sebelunya.
(truktur -+ eiliki 2 del. Bentuk yan& palin& uu adalah
FOR cntrl aria8le '+ alue- TO alue@ D &tate*ent
(tateent di atas akan die=eute setiap nilai ntrl ariable be$rubah.
ntrl Hariabel harus eiliki bentuk sederhana. Bentuk sederha$
na yan& beraa$aa diperblehkan asal bukan bertipe real.
Pascal Language
Biasanya ntrl Hariabel berupa%
Inte&er ariable
d i d i bl : k dij l k d i
8/17/2019 Komputer Dasar New
174/385
"ser deined ariable :*kan dijelaskan pada sessin yan&
akan datan&>/ia&ranya adalah seba&ai berikut%
ntrl Hariable
Halue 1.
.
.
Halue 2
aik seara berurut
(apai nilai Halue2 terapai'iap ?p (tateent di e=eute
Pascal Language
Catatan%
Hika control 'ariable bertipe integer maka control 'ariable akan
8/17/2019 Komputer Dasar New
175/385
Hika control 'ariable bertipe integer maka control 'ariable akan
naik 3!
,erhatikan nth 8.1%
FOR di:it '+ - TO @= DO Writeln(di:it!"
/iana<
di&it erupakan ntrl ariable bertipe inte&er
,enjelasan%
,ada nth 8.1 di&it akan bernilai 1
8/17/2019 Komputer Dasar New
176/385
nth 8.23u* '+="
FOR di:it '+ - TO n DO 3u* '+ 3u* C di:it"
,enjelasan%
,ada nth 8.2 har&a a9al< (u diisi 0. (etiap lp yan&
dijalankan akan enyebabkan nilai di&it pada saat lp ditabahkanke ariable (u.
Catatan:
! Gunakanlah F+R Structure apabila jumlah pengulangan
telah ditentukan di awal program (al ini dikarenakan
untuk kasus tersebut F+R Structure lebih mudah diban-
dingkan dengan I(&$9-0+ atau R9"9#T-J*T&$ Structure
Pascal Language
% (arga dari 'alue! dan 'alue% dapat diekspresikan sebagai
konstanta6 'ariable atau e;pression Tapi harga 'alue!
8/17/2019 Komputer Dasar New
177/385
Bila Maka (tateent
'alue% harus satu tipe dengan control 'ariable
"erhatikan aturan harga 'alue! dan 'alue % di bawah ini:
Halue1 D Halue2
Halue1 L Halue2
Halue1 E Halue2
/ie=eute sekali
/ie=eute lebih dari sekali :nral>
'idak /ie=eute saa sekali
Pascal Language
Bentuk kedua dari -+ struture irip den&an bentuk pertaa
8/17/2019 Komputer Dasar New
178/385
Bentuk kedua dari -+ struture irip den&an bentuk pertaa.
Bedanya '- di&anti den&an /-'-. Mdelnya adalah sbb%
FOR 5ntrl%aria8le '+ %alue- DOWNTO %alue@ DO 3tate*ent
Mdel kedua dari -+ struture tersebut< ebuat ntrl Hariable
ber&erak turun :Ini beda den&an del pertaa yan& ebuat n$
trl ariable ber&erak naik>. Cika ntrl ariable bertipe inte&er aka
ntrl ariable akan berkuran& 1 nilai setiap lpnya.
,erhatikan aturannya pada halaan berikut ini%
Pascal Language
Bila Maka (tateent
8/17/2019 Komputer Dasar New
179/385
Halue1 D Halue2
Halue1 E Halue2
Halue1 L Halue2
/ie=eute sekali
/ie=eute lebih dari sekali :nral>
'idak /ie=eute saa sekali
FOR i '+ - DOWNTO -= DO writeln(i!"
,enjelasan%,ada nth 8.3 bila dijalankan akan enyebabkan lp
berjalan sebanyak 10 kali. (etiap lpnya akan enetaknilai dari
$1 sapai $10 di layar.
nth 8.3
Pascal Language
8/17/2019 Komputer Dasar New
180/385
#('#/ -'+-? ('+"'"+#
Pascal Language
#('#/ -'+-? ('+"'"+#
ntrl struture dapat diselipkan satu den&an yan& lainnya
8/17/2019 Komputer Dasar New
181/385
ntrl struture dapat diselipkan satu den&an yan& lainnya.
Ba&ian luar aupun dalanya tidak harus eiliki tipe yan& saa.
Catatan:
Hangan sampai terjadi o'erlap 0engan kata lainnya penyelipannya
harus benar
FOR i '+ - TO / DO
BEGIN
) '+ =" REPEAT
writeln(Hal!"
6NTIL ) + -=
END"
nth 8.4
Pascal Language,enjelasan%
,ada nth 8.4 terlihat adanya +#,#*'$"'I? struture
di dala -+ (tr t re Ini er pakan nth ested ntrl
8/17/2019 Komputer Dasar New
182/385
di dala -+ (truture. Ini erupakan nth ested ntrl
(truture
Pascal Language
8/17/2019 Komputer Dasar New
183/385
'# I ('+"'"+#
Pascal Language '# I ('+"'"+#
I (truture erupakan nditinal ntrl struture yan& enye$
8/17/2019 Komputer Dasar New
184/385
I (truture erupakan nditinal ntrl struture yan& enye$
babkan stateent tertentu die=eute apabila suatu kndisi l&ikatertentu eiliki nilai tertentu :true atau alse>
I struture eiliki 2 bentuk. Bentuk yan& palin& udah adalah
seba&ai berikut%
IF BleanE
8/17/2019 Komputer Dasar New
185/385
IF 5unt + -== THEN 5unt '+5unt C-"
,enjelasan%
Cika har&a unt LD 100 aka unt akan saa den&an har&a unt
ditabah den&an satu. 'api bila unt E 100 aka stateent
unt %D unt ; 1 akan diabaikan.
(tateent tersebut bisa berupa siple stateent atau stateent ter$
struktur.
nth 8.5
Pascal Language
Bentuk kedua dari I (truture adalah seba&ai berikut%
8/17/2019 Komputer Dasar New
186/385
IF Beli ?+ -===== THEN Bnu&'+=@ EL3E Bnu& '+=-"
IF BleanE
8/17/2019 Komputer Dasar New
187/385
*(# ('+"'"+#
Pascal Language
*(# ('+"'"+#
ase (truture erupakan nditinal ntrl struture yan&
8/17/2019 Komputer Dasar New
188/385
ase (truture erupakan nditinal ntrl struture yan&
apu eilih &rup$&rup stateent.
,eilihan &rup tersebut ter&antun& pada nilai e=pressinnya yan&
dikenal seba&ai seletr.
Mdel uu dari ase (truture adalah seba&ai berikut%
5A3E e
8/17/2019 Komputer Dasar New
189/385
R ' Writeln(Red!"
W ' Writeln(W;ite!"END"
,enjelasan%
Cika ariabel hie berhar&a P+V aka di layar akan tertulis +ed.
(edan&kan bila ariabel hie berhar&a PV di layar akan tertulishite.
Catatan:
C#S9 Structure lebih mudah dibaca readable dibandingkan dengan &F-T(9*-9$S9 Structure /elemahan C#S9 Structure adalah terba-
tasnya model 'ariable yang dimilikinya
Pascal Language
8/17/2019 Komputer Dasar New
190/385
'# !-'- ('*'#M#'
8/17/2019 Komputer Dasar New
191/385
Pascal Language
GOTO -=="
nth 8.8
8/17/2019 Komputer Dasar New
192/385
,enjelasan%,ada nth 8.8< bila stateent tersebut die=eute aka pr&ra
akan enari label 100 dan enepatkan alur pr&ra berikutnya
pada stateent yan& berada setelah label 100 tersebut.
*da hal pentin& yan& tidak bleh dilupakan ketika eakai label
yakni%
/eklarasi ?abel
Pascal Language(etiap ?abel harus dideklarasikan sebelu dapat di&unakan.
/eklarasi ?abel dapat ditulis seba&ai berikut%
8/17/2019 Komputer Dasar New
193/385
LABEL -==, @==,==" 5ON3T p;i + -."
%AR a,8,c ' Inte:er"
/eklarasi ?abel dapat ditulis seba&ai berikut%
LABEL L8-, L8@,
/iana
?b1< ?b2< Z adalah nr ?abel
,endeklarasian ?abel harus berada endahului deklarasi knstantaaupun deklarasi ariabel.
nth 8.)
Pascal Language
8/17/2019 Komputer Dasar New
194/385
Pascal Language
8/17/2019 Komputer Dasar New
195/385
Pascal Language
8/17/2019 Komputer Dasar New
196/385
,+-#/"+#(
Pascal Language
,+-#/"+#(
,redure adalah suatu pr&ra terpisah dala blk sendiri yan&
8/17/2019 Komputer Dasar New
197/385
,redure adalah suatu pr&ra terpisah dala blk sendiri yan&
berun&si seba&ai subpr&ra :pr&ra ba&ian>.
Mdularisasi eiliki 2 keuntun&an di dala ,asal yakni%
1. Ba&i perhitun&an yan& perlu dikerjakan lebih dari sekali<
dularisasi akan en&hindari penulisan satu set pr&ra yan& saa. nthnya kita eiliki satu dul yan& dipakai leh
beberapa pr&ra atau ba&ian dari pr&ra. /en&an kata lain
penulisan dul tidak perlu banyak naun hanya sekali saja.
/ata yan& berbeda dapat diterapkan di dala dul. Mdul
ebuat panjan& pr&ra berkuran&.
Pascal Language
2. ?&ika pr&ra akan enjadi lebih jelas. al ini disebabkan
dipeah$peahnya pr&ra enjadi ba&ian keil$keil yan&
8/17/2019 Komputer Dasar New
198/385
p p y p & j & y &
rin&kas dan jelas< diana tiap dulnya akan berisi penyelesaian asalah$asalah yan& spesiik dari pr&ra. ,r&ra yan& de$
ikian akan udah ditulis dan di debu&.
Mdularisasi biasanya san&at diperlukan jika pr&ra san&at pan$
jan& dan eakai suatu set aturanJruus yan& dipakai berulan& kali.
/ekpsisi pr&ra enjadi dul erupakan salah satu arauntuk belajar pr&rain& seara benar dan baik.
Bisa dikatakan %
Pascal Language
1. ,redure
*da dua aa tipe pr&ra dules di ,asal< yakni%
8/17/2019 Komputer Dasar New
199/385
2. untins
(truktur dari keduanya adalah irip. an& ebedakannya adalah
ara kita en&aksesnya. Inrasi yan& dipertukarkan ju&a berbeda.
(ebelunya telah didiskusikan %1. (tandard predures seperti%
a. rite
b. +ead
2. (tandard untins sepertK% a. sFr dll.
(ekaran& saatnya ebiarakan predure dan untin seara
detail.
Pascal Language
,redure di dala bahasa pr&ra selain ,asal ju&a disebut se$
ba&ai subrutine.
8/17/2019 Komputer Dasar New
200/385
,redure dapat dipan&&il den&an ara yan& sederhana yakni%1. Menyebut naa predure diikuti
2. ,araeter$paraeternya :-ptinal>
,araeter predure ditulis di antara tanda kurun& dan jika julah paraeternya lebih dari satu< aka antar paraeter dipisahkan
den&an tanda ka.
,ada 9aktu predure dipan&&ilJdireerens< kntrl pr&ra seara
tatis diletakkan pada ba&ian a9al predure.
Pascal Language
Keudian (tateent dala predure die=eute satu persatu
8/17/2019 Komputer Dasar New
201/385
seara berurutan< den&an eperhitun&kan deklarasi unik yan&
dibuat di dala predure.
(etelah seua stateents di dala predure die=eute< aka
Kntrl akan seara tatis kebali pada stateent setelah
stateent yan& ereerens predure.
"ntuk lebih jelasnya lihat Ba&an yan& eberikan nth letak
dari blk predure di dala suatu pr&ra pada penjelasan yan&
selanjutnya.
Pascal Language
PROGRAM >udulpr:ra*"
8/17/2019 Komputer Dasar New
202/385
BEGIN
END
BEGIN
END"
PRO5ED6RE >udulprcedure"
Pascal Language,ada nth ).1 akan dibuat suatu predure den&an naa !aris
yan& di&unakan untuk enapilkan &aris di layar nitr.
h ) 1
8/17/2019 Komputer Dasar New
203/385
PRO5ED6RE Gari&"
Be:in
Writeln(!"
End"
Be:in Gari&"
Writeln(3ela*at Datan:!"
Gari&"
End
Bila pr&ra dijalankan akan napak del seba&ai berikut%
3ela*at Datan:
nth ).1
Pascal Language,ada nth ).2 akan dibuat suatu predure yan& akan ebaa
ti&a data bertipe inte&er untuk keudian enentukan nilai yan&
terbesar. ,redurenya diberi naa a=iu.
8/17/2019 Komputer Dasar New
204/385
PROGRAM 5nt;"
%ar a,8,c ' inte:er"
PRO5ED6RE *a
8/17/2019 Komputer Dasar New
205/385
akan selalu einta user eberikan input data selaa har&a a
:har&a pertaa data> bernilai tidak nl.
Pascal Language
8/17/2019 Komputer Dasar New
206/385
(-,# - I/#'II#+(
Pascal Language
(-,# - I/#'II#+(
Knstanta dan ariable yan& ada di dala predure dapat didekla$
8/17/2019 Komputer Dasar New
207/385
Keteran&an%
ara #=ternal % dideklarasikan di dala blk pr&ra
ara ?al % dideklarasikan di dala predure
Knstanta dan ariable yan& ada di dala predure dapat didekla$
rasikan den&an beberapa ara%
1. ara #=ternal
2. ara ?al
Pascal Language
Knstanta dan Hariable yan& dideklarasikan di dala blk dapat
di&unakan dise&ala tepat dala blk tersebut. Identiier yan&
8/17/2019 Komputer Dasar New
208/385
dideinisikan seperti ini dian&&ap berlaku &lbal terhadap predure.
(ebaliknya< knstanta dan ariable lal tidak dideinisikan di luar
predure sehin&&a hanya dapat di&unakan leh predure saja.
,ada nth ).2 dapat diabil kesipulan bah9a ariable a
8/17/2019 Komputer Dasar New
209/385
,*+*M#'#+(
Pascal Language
,*+*M#'#+(
,ada uunya pr&ra ,asal ebutuhkan adanya pertukaran
inrasi antara predure atau untin. (alah satu ara yan& di$
8/17/2019 Komputer Dasar New
210/385
p y &
&unakan adalah den&an en&&unakan%
!?-B*? H*+I*B?#
aun pen&&unaan !lbal Hariable eiliki keleahan. *pabilakita en&&unakan !lbal Hariable aka ariable yan& kita iliki
akan san&at un&kin en&alai intererensi akibat huan errr.
nthnya ialah bila sapai kita lupa en&ubah nilai dari ariable
&lbal yan& kita iliki pada 9aktu suatu prses analisa terjadi didala predure. *kibatnya kesalahan yan& terjadi akan sulit dilaak
bila pen&&unaan ariable ini be&itu luas.
Pascal Language
PROGRAM 5nt;"
%ar a,8 ' inte:er"
c,d ' real"
nth ).3
8/17/2019 Komputer Dasar New
211/385
c,d ' real"
PRO5ED6RE 9la&;(
8/17/2019 Komputer Dasar New
212/385
1. Culah dari atual paraeter di dala
reerene predure harus saa den&an
julah ral paraeter.2. (etiap atual paraeter harus eiliki tipe
yan& saa den&an ral paraeter yan&
di9akili.
Beberapa peraturan yan& dipakai%
Pascal Language
8/17/2019 Komputer Dasar New
213/385
"'I-(
Pascal Language
"'I-(
,erbedaan yan& endasar antara untin dan predure adalah%
8/17/2019 Komputer Dasar New
214/385
,erbedaan yan& endasar antara untin dan predure adalah%
untin di&unakan untuk en&hasilkan nilai balik atau sin&le aluediana sin&le aluenya bertipe sederhana.
,enulisan dari untin irip den&an predure yakni%
1. aa untin diikuti den&an tipe dari nilai baliknya.2. Bila paraeter diberikan aka< paraeter tersebut di tulis setelah
naa dan diletakkan di antara tanda kurun&.
3. Bila julah ,araater yan& dipakai lebih dari satu aka untuk e$
isahkan antar paraeter di&unakan tanda ka.
Pascal Language
Mdel penulisan untin adalah seba&ai berikut%
F6N5TION na*e ' tKpe
atau jika di&unakan paraeter aka%
F6N5TION ( 9 l t ! t
8/17/2019 Komputer Dasar New
215/385
F6N5TION Ter8e&ar(
8/17/2019 Komputer Dasar New
216/385
M-+# *B-"' ,*+*M#'#+(
Pascal Language
M-+# *B-"' ,*+*M#'#+(
*da keun&kinan untuk en&&unakan predure untuk en&akses
predure atau untin yan& lain ,asal apu untuk elakukan
8/17/2019 Komputer Dasar New
217/385
predure atau untin yan& lain. ,asal apu untuk elakukan
prses tersebut.
,rses transer paraater dari predure atau untin eiliki 2 tipe
yaitu%
1. By Halue2. By +eerene
Bila paraeter dikiri elalui ara By Halue< aka apabila paraeter
ral di dala predure diubah aka tidak akan epen&aruhi paraeter atual. (ebaliknya bila paraeter dikiri elalui ara By
+eerene< aka bila paraeter ral diubah aka akan epen&a$
ruhi paraeter atual.
Pascal Language
,erbedaan penulisannya adalah seba&ai berikut%
8/17/2019 Komputer Dasar New
218/385
Inilah yan& ebedakan YYY
B4 %AL6EPrcedure na*e( para*-,para*@ ' tKpePara*!"
B4 REFEREN5EPrcedure na*e( %AR para*-,para*@ ' tKpePara*!"
Pascal Language
8/17/2019 Komputer Dasar New
219/385
+#"+(I-(
Pascal Language
+#"+(I-(
(alah satu hal yan& palin& enarik di dala ,asal adalah kea$
puan predure atau untinnya t ean&&il predure atau
8/17/2019 Komputer Dasar New
220/385
puan predure atau untinnya t ean&&il predure atau
untin yan& bersan&kutan.
,en&&unaan +eursin dikususkan untuk asalah$asalah yan&
dapat dideinisikan seara reursie :Meskipun asalah seperti itu
dapat diselesaikan den&an ara nn$reursie>.
Ketika enulis suatu predure atau untin yan& en&&unakan
del reursie< perlu diketahui a&ar predure atau untin ea$
sukkan suatu kndisi yan& eun&kinkan pr&ra berhenti. Kalautidak aka pr&ra akan berlanjut terus enerus.
Pascal Language
Main Menu
8/17/2019 Komputer Dasar New
221/385
Min&&u Ke$10
1 2 3 4 5 6 7 8 ) 10 11 12 13 14 15 16 17
"'( "*(
Pascal Language
B#B#+*,* ,-I' *! *K* /IB**(%
8/17/2019 Komputer Dasar New
222/385
-'-$-'-
#"M#+*'#/$',# /*'*
("B+*!#
Pascal Language
8/17/2019 Komputer Dasar New
223/385
-'-$-'-
Pascal Language
nth r (truture
nth 10.1
8/17/2019 Komputer Dasar New
224/385
%ar
i ' inte:er"
Be:in
FOR i '+ - TO DO Writeln(Hall!"
End
Bila pr&ra ini dijalankan< akan didapatkan hasil%
Hall
Hall
Hall
Pascal Language
,enjelasan%
,erintah -+ di atas akan ebuat stateent riteln:PallV>
diulan& sebanyak 3 kali< karena ariable i ber&erak dari nilai satu
sapai nilai 3
8/17/2019 Komputer Dasar New
225/385
%ar
i ' inte:er"
Be:in
FOR i '+ - TO DO
Be:inWriteln(Hall!"
End"
End
Ini erupakan blk stateent
sapai nilai 3.
Mdel ,enulisan nth 10.1 dapat diubah enjadi nth 10.2.
,en&ubahannya tidak ebuat hasil berubah.
nth 10.2
Pascal Language
,enjelasan%
Mdel penulisan nth 10.2 adalah den&an ebuat blk state$
8/17/2019 Komputer Dasar New
226/385
ent di dala -+ (truture. ,enulisannya adalah udah karenahanya den&an diberinya a9alan Be&in dan akhiran #nd pada blk
stateent di dala -+ (truture.
/en&an dipakainya Blk (tateent akan ebuat pr&raer dapat eberikan satu set perintah$perintah yan& akan diulan& di
dala -+ (truture.
(eba&ai atatan< ,erlu dibiasakan untuk en&&unakan blk state$
ent karena akan serin& kali kita enjupai perulan&an yan& tidak hanya en&&unakan satu stateent saja.
Pascal Language
%ar
nth 10.3
8/17/2019 Komputer Dasar New
227/385
i ' inte:er"Be:in
FOR i '+ - TO DO
Be:in
Write(Ini !"
Writeln(Hall 7e,i!" End"
End
Bila pr&ra dijalankan akan didapat hasil%
Ini Hall 7e-
Ini Hall 7e@
Ini Hall 7e
Pascal Language
Bila Be&in dan #nd yan& enandai blk stateent di dala -+
(truture di hilan&kan aka bisa dilihat pada nth 10.4
8/17/2019 Komputer Dasar New
228/385
%ar
i ' inte:er"
Be:in
FOR i '+ - TO DO
Write(Ini !" Writeln(Hall 7e,i!"
End
Bila pr&ra dijalankan akan didapat hasil%
Ini Ini Ini Hall 7e
nth 10.4
Pascal Language
,enjelasan%
,ada nth 10.4< pen&ulan&an yan& dilakukan hanya pada stateent
pertaa yakni riteln:PIni P>. al ini terjadi karena penulisan state$
8/17/2019 Komputer Dasar New
229/385
(edan&kan setelah pen&ulan&an aka nilai dari ariable i adalahnilai terakhir pen&ulan&an yakni 3. Cadi untuk elakukan perlu di
ketahui den&an benar nilai dari i.
ent ke dua dian&&ap di luar blk -+$(truture.
%NGAT &&&BI?* 'I/*K */* B?-K ('*'#M#'
('*'#M#' *! /I"?*!
** ('*'#M#' ,#+'*M* /*+I -+ ('+"'"+#.
Pascal Language
nth I ('+"'"+#
nth 10.5
8/17/2019 Komputer Dasar New
230/385
%ar
Nilai' Real"
7et ' 3trin:Q--"
Be:in
7et '+Tida) Lulu&"
Write(Ma&u))an Har:a nilai anda + !"Readln(Nilai!" IF Nilai ?+= THEN 7et '+ Lulu&"
Writeln(Anda ,7et!"
End
Bila pr&ra ini dijalankan< akan didapatkan hasil%Ma&u))an Har:a nilai anda + 00
Anda Lulu&
Pascal Language
,enjelasan%
,ada nth 10.5< terlihat ariable ket dideinisikan seba&ai strin&
y&. eiliki julah 11 karakter. Ini di&unakan untuk en&heat
8/17/2019 Komputer Dasar New
231/385
peakaian eri kputer. (elanjutnya ,r&ra akan eintauser untuk easukkan suatu nilai< katakanlah nilai ujian. Cika nilai
yan& diberikan kuran& dari 60 aka di layar akandi tapilkan tulisan
*nda 'idak ?ulus< 'api sebaliknya bila nilai y&.diberikan lebih dari
atau saa den&an 60 aka akan ditapilkan tulisan *nda ?ulus.
Pascal Language
%ar
nth 10.6
8/17/2019 Komputer Dasar New
232/385
Nilai' Real" 7et ' 3trin:Q--"
Be:in
Write(Ma&u))an Har:a nilai anda + !"Readln(Nilai!"
IF Nilai ?+= THEN
Be:in
7et '+ Lulu&"
End
El&e
Be:in
7et '+ Tida) Lulu&"
End"Writeln(Anda ,7et!"
End
Pascal Language
Bila pr&ra ini dijalankan< akan didapatkan hasil%Ma&u))an Har:a nilai anda + =
8/17/2019 Komputer Dasar New
233/385
Anda Tida) Lulu&
,enjelasan%
nth 10.6< eiliki hasil yan& saa den&an nth 10.5 perbe$
daannya adalah pada nth 10.6 dipakai blk stateent I$'#
$#?(# (truture. ,erhatikan untuk stateent yan& hanya satu akanlebih rin&kas jika tidak di&unakan blk stateent. Cadi ukup den&an
en&&unakan I$'#$#?(# (truture.
Pascal Language
nth *(# - ('+"'"+#
nth 10.7
8/17/2019 Komputer Dasar New
234/385
%ar
Nilai' 5;ar"
Be:in
Write(Ma&u))an nilai Huru9 + !"Readln(Nilai!"
5A3E Nilai OF A ' Writeln(3an:at Bai)!"
B ' Writeln(Bai)!"
5 ' Writeln(5u)up!"
D ' Writeln(7uran:!"
E,F' Writeln(Ga:al!"
End"
End
Pascal Language
Bila pr&ra ini dijalankan< akan didapatkan hasil%Ma&u))an nilai Huru9 + A
8/17/2019 Komputer Dasar New
235/385
3an:at Bai)
,enjelasan%
nth 10.7< en&&unakan *(# - (truture untuk enyele$
saikan perasalahan yan& berhubun&an den&an situasi nditinal.
/en&an en&&unakan *(# - (truture napak pr&ra udah
untuk dipahai dan lebih rin&kas. aun perlu diakan< struktur
ini eiliki keleahan dala tipe data yan& diperbandin&kan. Cadi
hanya di&unakan untuk nditinal yan& sederhana. ,erhatikan
pen&&unaan ka untuk eisahkan pilihanJhies.
Pascal Language
8/17/2019 Komputer Dasar New
236/385
#"M#+*'#/$',# /*'*
Pascal Language
#"M#+*'#/$',# /*'*
'elah kita lihat bah9a ada dua kate&ri uu dari siple$data
di ,asal. Kate&ri tersebut adalah standard-type data< dan
8/17/2019 Komputer Dasar New
237/385
& yp <
user-defined data.
Kedua Kate&ri tersebut dapat dipeah la&i enjadi%
1. (tandard$type data
a. inte&er . har
b. real d. blean
2. "ser$deined data
a. enuerated b. subran&e
Pascal Language
,en&&unaan standard$type data telah dijelaskan sebelunya.
(ekaran& akan ditinjau user$deined data< yakni enuerated dan
8/17/2019 Komputer Dasar New
238/385
subran&e.
#nuerated$'ype /ata
'erdiri dari urutan identiiers< diana setiap identiier dian&&ap
seba&ai indiidu data ite. /ata$data ite keudian seara klekti
diassiasikan den&an suatu naa yan& di&unakan untuk en&$iden$
tiikasi data type.
,endiinisian enuerated$type data en&&unakan kata TD"9 .
Bentuk uunya adalah seba&ai berikut%T4PE na*e + (data ite*-, data ite*@,, data ite* n!
Pascal Language
T4PE ;ari + (Min::u, 3en, 3el, Ra8, 7a*, >u*, 3a8!
nth 10.8
8/17/2019 Komputer Dasar New
239/385
,enjelasan%
,ada nth 10.8< kita deinisikan suatu enuerated data type disebut
hari. /ata ite hari adalah hari$hari dala satu in&&u< yaitu %
Min&&u< (en< (el< +ab< Ka< Cu< (ab.
Beberapa peratr l&ika yan& di&unakan%
#=pressin Halue
Min&&u L (el 'rue
pred:+ab> D (el 'rueCu LE (ab 'rue
(el D (en alse
Pascal Language
un&si (tandard rd ju&a dapat di&unakan isalnya%
rd:Min&&u> D 0
rd:(en> D 1
8/17/2019 Komputer Dasar New
240/385
: >
(u:Cu> D (ab
(u:(en> D (el
Pascal Language
8/17/2019 Komputer Dasar New
241/385
("B+*!# ',# /*'*
Pascal Language
("B+*!#$',# /*'*
(ebuah (ubran&e akan en&au pada suatu ran&e dari suatu data
yan& sederhana.
8/17/2019 Komputer Dasar New
242/385
y &
Mdel "u dari (ubran&e 'ype /ata adalah seba&ai berikut%T4PE na*e + Fir&tDataIte* La&tDataIte*
irst data ite< erupakan data a9al biasanya ju&a dikenal seba&ai batas ba9ah< sedan&kan ?ast data ite< erupakan data akhir ju&a
dikenal seba&ai batas atas. /aerah antara batas ba9ah dan batas atas
di9akili leh naa subran&e tersebut.
(eba&ai atatan< batas ba9ah dan batas atas terasuk di dala
hitun&an.
Pascal Language
nt