Elemen Elemen Pascal

advertisement
Elemen-Elemen Pascal
Elemen – Elemen Pascal
2
OBJECTIVES
 Simbol-simbol dasar (basic symbols)
 Kata-kata cadangan (reserved word)
 Pengenal didefinisikan oleh pemakai (user defined identifier)
 Tipe Data
 Karakter kontrol (control character)
 Tanda operasi (operator)
 Komentar Program (comment)
 Pernyataan (Statement)
3
SIMBOL DASAR
4
SIMBOL DASAR
 Program Pascal dapat dibentuk dari simbol-simbol yang terdiri dari:
1. huruf-huruf,
2. angka-angka dan
3. simbol-simbol khusus.
5
HURUF
 Huruf-huruf yang dapat digunakan adalah :
1.
huruf A – Z,
2.
a – z dan
3.
_ (garis bawah).
 Huruf besar (upper case) dan huruf kecil (lower case)
dianggap sama, tidak dibedakan.
6
ANGKA
 Angka yang digunakan adalah angka-angka :
Angkanya adalah bilangan desimal :
0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
7
SIMBOL-SIMBOL KHUSUS
 Simbol-simbol khusus yang dapat digunakan adalah sebagai
berikut :
+
-
*
/
=
^
()
[]
{}
.
,
:
;
‘
#
$
8
SIMBOL-SIMBOL KHUSUS
 Karakter-karakter yang berpasangan juga merupakan simbol-
simbol khusus, yaitu:
<=
>=
(* *)
(. .)
:=
..
9
KATA CADANGAN
10
KATA – KATA CADANGAN
 Kata – kata cadangan (reserved words) adalah kata-kata yang
sudah didefinisikan oleh Pascal yang mempunyai maksud
tertentu.
 Kata-kata cadangan tidak boleh didefinisikan ulang oleh
pemakai, sehingga tidak
pengenal (identifier).
dapat
dipergunakan
sebagai
11
KATA – KATA CADANGAN
absolute
file
mod
*shr
and
For
Nil
*string
Array
Forward
Not
Then
Begin
Function
Of
To
Case
Goto
Or
Type
Const
If
Packed
*unit
div
Implementation
Procedure
Until
do
in
program
*uses
downto
*inline
record
var
else
*interface
repeat
while
end
*interrupt
set
with
*external
label
*shl
*xor
12
IDENTIFIER
13
IDENTIFIER
 Nama yang digunakan di dalam program Pascal disebut
dengan pengenal (identifier).
 Pemakai dapat mendefinisikan sendiri suatu nama sebagai
pengenal untuk pengenal tipe, pengenal konstanta,
pengenal variabel, pengenal prosedur, pengenal
fungsi, pengenal unit, pengenal program, dan pengenal
field di record.
14
IDENTIFIER
 Pengenal yang didefinisikan sendiri ini bebas, tetapi dengan
ketentuan-ketentuan sebagai berikut:
1.
Terdiri dari gabungan huruf dan angka dengan karakter
pertama harus berupa huruf.
2.
Tidak boleh mengandung blank.
3.
Tidak boleh mengandung simbol-simbol khusus, kecuali garis
bawah.
4.
Penjangnya bebas, tetapi hanya 63 karakter pertama yang
dianggap signifikan.
15
IDENTIFIER
 Examples:
Pengenal
Keterangan
GajiKaryawan
No_Mhs
P3K
1X
A&B
AB
16
TIPE DATA
17
TIPE DATA
 Jika menggunakan pengenal variabel di dalam program, maka
variabel tersebut harus deklarasikan terlebih dahulu.
 Pada
waktu mendeklarasikan
menentukan tipe dari data.
suatu
variabel, maka
harus
 Berikut ini akan dijelaskan penggunaan dari tipe data standar,
yaitu dapat berbentuk tipe data numerik integer, numerik real,
karakter, string, dan boolean serta tipe data penunjuk.
18
TIPE DATA INTEGER
 Data numerik integer merupakan nilai bilangan bulat baik dalam
bentuk desimal maupun hexadesimal.
 Nilai integer hexadesimal diawali dengan tanda dollar ($).
 Pascal khususnya dalam Turbo Pascal menyediakan 5 macam tipe
data integer yang masing-masing mempunyai jangkauan nilai
yang berbeda seperti pada tabel.
19
TIPE DATA INTEGER
 Tabel Tipe Dat aInteger
Tipe
Ukuran Memori (dalam
byte)
Jangkauan Nilai
Byte
1
0 .. 255
Shortint
1
-128 .. 127
integer
2
-32768 .. 32767
word
2
0 .. 65535
longint
4
-2147483648 .. 2147483647
20
TIPE DATA INTEGER
 Contoh 1:
 Jika menggunakan suatu pengenal variabel yang bernama Jumlah
dan nilai yang akan dikandungnya tidak lebih dari 255, maka
dapat digunakan tipe data byte.
 Oleh karena digunakan suatu variabel, maka pengenal variabel
ini haru sdideklarasikan terlebih dahulu, sbb:
21
TIPE DATA INTEGER
 Contoh 1:
Program_Data_Byte;
Var
Jumlah : byte;
Begin
Jumlah := 200;
writeln(‘Nilai Jumlah = ‘, Jumlah);
End.
22
TIPE DATA INTEGER
 Contoh 2:
 Bila nilai data yang digunakan lebih besar dari 255 tetapi tidak
lebih besar dari 32767, maka dapat digunakan tipe data Integer,
sebagai berikut:
23
TIPE DATA INTEGER
 Contoh 2:
Program_Data_Integer;
Var
Jumlah : integer;
Begin
Jumlah := 25000;
writeln(‘Nilai Jumlah = ‘, Jumlah);
End.
24
TIPE DATA REAL
 Nilai konstanta numerik real berkisar 1E-38 hingga 1E+38 dengan
mantisa yang signifikan sampai dengan 11 digit.
 E menunjukkan nilai 10 pangkat.
 Nilai konstanta numerik real menempati memori sebesar 6 byte.
25
TIPE DATA REAL
 Contoh nilai konstanta numerik real.
123.45
12345.
Salah, titik desimal tidak boleh dibelakang
12E5
12E+5
-12.34
1.23E-2
.1234
0.1234
Salah, titik desimal tidak boleh dimuka
26
TIPE DATA REAL
 Contoh 1 :
Program_Data_Real;
Var
Nilai1, Nilai2 : real;
Begin
Nilai1 := 12345678901.2345;
Nilai2 := 12345;
writeln(‘Nilai 1 = ‘, Nilai1);
writeln(‘Nilai 2 = ‘, Nilai2);
End.
27
TIPE DATA REAL
 Contoh 1 : (Hasil)
Nilai 1 = 1.2345678901E+10
Nilai 2 = 1.2345000000E+04
28
TIPE DATA REAL
 Turbo Pascal mendukung penggunaan tipe data sesuai dengan
IEEE (Institue of Electrical and Electronic Engineers) Standard 754
untuk arithmatika floating-point, yang terdiri dari tipe data:
 Single
 Double
 Extended
 Comp
29
TIPE DATA REAL
 Tipe data real IEEE Standard 754
Tipe
Ukuran Memori
(dalam byte)
Jangkauan Nilai
Digit Signifikan
Single
4
1.5 x 10E-45 .. 3.4 x 10E38
7-8
Double
8
5.0 x 10E-324 .. 1.7 x 10E308
15-16
Extended
10
1.9 x 10E-4951 .. 1.1 x 10E4932
19-20
Comp
8
-2E + 63 + 1 .. 2E + 63 - 1
19-20
30
TIPE DATA REAL
 Example:
Begin
S
:= 22/7;
D
:= 22/7;
E
:= 22/7;
C
:= 22/7;
writeln(‘Single :‘, S);
writeln(‘Double :‘, D);
writeln(‘Extended :‘, E);
writeln(‘Comp :‘, C);
Program_Data_Real;
Var
S: Single;
D: Double;
E: Extended;
C: Comp;
End.
31
TIPE DATA REAL
 Hasil :
Single
Double
Extended
Comp
: 3.14285707473755E+0000
: 3.14285714285714E+0000
: 3.14285714285714E+0000
: 3.00000000000000E+0000
32
TIPE DATA KARAKTER
 Nilai data karakter berupa sebuah karakter yang ditulis diantara
tanda petik tunggal, seperti misalnya ‘A’, ‘a’, ‘!’, ‘%’, ‘5’ dan
sebagainya.
 Penggunaan variabel untuk menyimpan data tipe karakter ini
harus dideklarasikan dengan tipe Char, sebagai berikut:
33
TIPE DATA KARAKTER
 Contoh:
Program_Data_Char;
Var
SebuahKarakter : char;
Begin
SebuahKarakter := ‘A’;
writeln(‘Karakter
tersebut
SebuahKarakter’);
End.
=
‘,
34
TIPE DATA STRING
 Nilai data STRING merupakan urut-urutan dari karakter yang
terletak di antara tanda petik tunggal.
 Bila karakter petik merupakan bagian dari konstanta string, maka
dapat ditulis dengan menggunakan dua buah petik tunggal
berurutan.
 Nilai data string akan menempati memori sebesar banyaknya
karakter stringnya ditambah dengan 1 byte.
 Bila panjang dari suatu string di dalam deklarasi variabel tidak
disebutkan,maka dianggap panjangnya adalah 255 karakter.
35
TIPE DATA STRING
 Contoh:
Begin
Program_Data_String;
Var
Tanggal
1987’;
:=
‘18-02-
Tanggal
: string[10];
Hari
:= ‘Jum’’at’;
Hari
: string[6];
Pasaran
:= ‘Legi’;
Pasaran
: string[4];
Jarak
:= ‘ ‘;
Jarak
: char;
writeln(Tanggal,
Hari, ‘ ‘,Pasaran);
Jarak,
End.
36
TIPE DATA BOOLEAN
 Tipe data boolean mempunyai dua buah nilai, yaitu True dan False.
 Anda dapat mendeklarasikan suatu variabel berupa tipe data
boolean dan mengisi variabel tersebut dengan nilai data boolean
True dan False.
37
TIPE DATA BOOLEAN
 Contoh:
Program_Boolean;
Var
Lagi : boolean;
Begin
Lagi := True;
writeln(‘Nilai Lagi = ‘,Lagi);
End.
38
TIPE DATA POINTER
 Suatu pointer adalah suatu variabel yang berisi alamat (address)
di memori RAM dimana suatu data disimpan, bukannya berisi data
itu sendiri.
 Dengan kata lain, pointer akan menunjukkan letak dari data di
memori.
39
TIPE DATA POINTER
 Contoh:
Program_Pointer;
Type
Tipestring = string[40];
pointerstring = ^Tipestring;
Var
LetakNama : pointerstring;
Begin
LetakNama^ := ‘Jogiyanto H.M’;
writeln(LetakNama^);
End.
40
TIPE DATA ORDINAL
 Tipe data ordinal (ordinal type) adalah tipe data yang merupakan
subset dari tipe data sederhana (tipe data standar dan tipe data
yang didefinisikan sendiri oleh pemakai).
 Yang dimaksud dengan tipe data sebenarnya adalah semua tipe
data sederhana kecuali tipe data numerik real.
 Jadi yang termasuk dalam tipe data ordinal adalah:
41
TIPE DATA ORDINAL
1. Tipe data standar (integer, shortint, longint, byte, word, boolean
dan char)
2. Tipe data yang didefinisikan sendiri oleh pemakai (enumerated
type dan subrange type)
42
TIPE DATA ORDINAL
Tipe data ordinal mempunyai beberapa karakteristik sebagai
berikut ini :
1. Fungsi standar Ord dapat digunakan untuk menghasilkan nilai
urutannya. Misalnya Ord(‘a’) akan dihasilkan nilai 97, yaitu nilai
urutanya sesuai dengan kode ASCII.
2. Fungsi
standar Pred dapat digunakan untuk menghasilkan
predecessor dari nilai datanya. Misalnya Pred(“b”) akan dihasilkan
nilai “a”.
3. Fungsi
standar Succ dapat digunakan untuk menghasilkan
successor dari nilai datanya. Misalnya Succ(“a”) akan dihasilkan
nilai “b”.
43
KARAKTER KONTROL
44
 Pascal
memungkinkan karakter-karakter
dilekatkan di dalam suatu string.
kontrol
untuk
 Dua buah notasi digunakan untuk karakter kontrol, yaitu:
 Simbol # yang diikuti oleh suatu nilai integer diantaranya 0-255,
baik berupa nilai desimal maupun hexadesimal untuk
menunjukkan suatu karakter yang dihubungkan dengan kode
ASCII.
45
 Contoh:
#7
#65
#10
ASCII 7 adalah bel
ASCII 65 adalah karakter A
ASCII 10 adalah line feed
#13
ASCII 13 adalah carriage return
46
 Contoh:
Program_Kontrol;
Begin
writeln(#83#65#89#65#32#80#65#83#67#65#76);
End.
47
 Contoh 2:
 Simbol ^ diikuti oleh suatu karakter, menunjukkan hubungannya
dengan karakter kontrol.
^G
Control-G berarti Bel, sama dengan ASCII 7
^M
Control-M berarti carriage return, sama dengan ASCII 13
^[
Control-[ berarti escape
48
 Contoh 2:
Program_Kontrol_Bel;
Begin
writeln(‘Apakah Anda mendengar bunyi bel 2 kali?’, ^g#7);
End.
49
TANDA OPERASI
50
 Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori,
yaitu:
1.
2.
3.
4.
5.
6.
7.
8.
9.
Assigment operator
Binary Operator
Unary Operator
Bitwise Operator
Relational Operator
Logical Operator
Address Operator
Set Operator
String Operator
51
 Assignment operator menggunakan simbol titik dua diikuti oleh
tanda sama dengan (:=).
 Contoh:
Begin
A:= 2;
End.
52
 Operator ini digunakan untuk mengoperasikan dua buah
operand.
 Operand dapat berbentuk konstanta ataupun variabel.
 Operator ini digunakan untuk operasi arithmatika yang
berhubungan dengan nilai tipe data Integer dan real.
53
 Tabel Binary Operator
Operator
Operasi
Tipe operand
Tipe Hasil
*
Perkalian
Real, real
Integer, integer
Real, integer
Real
Integer
Real
DIV
Pembagian bulat
Integer, integer
Integer
/
Pembagian real
Real,real
Integer,integer
Real, integer
Real
Real
Real
MOD
Modulus
Integer, integer
Integer
54
 Tabel Binary Operator
Operator
Operasi
Tipe operand
Tipe Hasil
+
Pertambahan
Real, real
Integer, integer
Real, integer
real
Integer
Real
-
Pengurangan
Real, real
Integer, integer
Real, integer
Real
Integer
real
55
 Contoh:
Program_Biner;
Begin
writeln(15*5);
writeln(20/3);
writeln(20 div 3);
writeln(20 mod 3);
End.
56
 Disebut dengan unary operator karena operator ini hanya
menggunakan sebuah operand saja.
 Unary
operator dapat berupa unary minus dan
unary plus.
57
 Unary minus : Operator yang berupa tanda minus hanya
digunakan pada sebuah numerik operand saja untuk
menunjukkan nilai negatip, baik pada operand numerik
real, maupun numerik integer.
 Unary plus : operator untuk memberi tanda plus.
58
 Examples:
-5
-7
- 2.5
- +2.5
59
 Digunakan untuk operasi bit per bit pada nilai integer.
Operator
Operasi
Tipe Operand
Tipe Hasil
NOT
Bitwise Negation
Integer
integer
AND
Bitwise AND
Integer, integer
integer
OR
Bitwise OR
Integer, integer
integer
XOR
Bitwise XOR
Integer, integer
integer
Shl
Shift left
Integer, integer
integer
Shr
Shift right
Integer, integer
integer
60
 Operator NOT
Operator NOT digunakan untuk pembalikan bitwise, yaitu
nilai bit 1 menjadi bit 0 dan sebaliknya nilai bit 0 menjadi bit
1.
61
 Contoh:
Program_NOT;
Begin
writeln(not 0);
writeln(not 5);
writeln(not 18);
writeln(not -17);
End.
62
 Contoh:
-1
-6
-19
16
63
 Operator AND
Operator AND digunakan untuk membandingkan dua buah
elemen, hasilnya akan benar bila keduanya benar.
Bila logika benar diberi simbol 1 dan logika salah diberi
simbol 0, maka hubungan operator And tampak pada tabel.
64
 Operator AND
A
B
A AND B
1
1
1
1
0
0
0
1
0
0
0
0
65
 Operator AND
Program_AND;
Begin
writeln(12 AND 23);
End.
66
 Operator OR
 Operator ini digunakan untuk membandingkan dua buah
elemen, hasilnya akan benar bila salah satu atau keduanya
benar. Bila logika benar diberi simbol 1 dan logika salah
diberi simbol 0, maka hubungan operator OR tampak pada
tabel.
67
 Operator OR
A
B
A OR B
1
1
1
1
0
1
0
1
1
0
0
0
68
 Operator OR
Program_OR;
Begin
writeln(12 OR 23);
End.
69
 Operator XOR
 Digunakan untuk membandingkan dua buah elemen,
hasilnya akan benar bila salah satunya saja yang benar.
 Bila logika benar diberi simbol 1 dan logika salah diberi
simbol 0, maka hubungan operator XOR tampak pada
tebel.
70
 Operator XOR
A
B
A XOR B
1
1
0
1
0
1
0
1
1
0
0
0
71
 Operator XOR
Program_XOR;
Begin
writeln(12 XOR 23);
End.
72
 Operator SHL
Operator SHL digunakan untuk menggeser (shift) sejumlah
bit ke kiri (left) dengan nilai bit 0.
73
 Operator SHL
Program_SHL;
Begin
writeln(5 shl 6);
End.
74
 Operator SHR
Operator shr digunakan untuk menggeser sejumlah bit ke
kenan dengan nilai bit 0.
75
 Operator SHR
Program_SHR;
Begin
writeln(160 shr 6);
End.
76
 Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori,
yaitu:
1.
2.
3.
4.
5.
6.
7.
8.
9.
Assigment operator
Binary Operator
Unary Operator
Bitwise Operator
Relational Operator
Logical Operator
Address Operator
Set Operator
String Operator
77
 HM, Jogiyanto. 2001. Turbo Pascal Teori dan Aplikasi Program Komputer Bahasa
Turbo Pascal Termasuk Database Toolbox. Yogyakarta: Andi.
Download