TINGKAT SMA
GO GET GOLD
Struktur program :
Judul Program PROGRAM nama-program;
Blok Program
Bagian deklarasi
deklarasi label LABEL nama-label;
deklarasi konstanta CONST..;
deklarasi tipe TYPE .;
deklarasi variabel VAR ;
deklarasi prosedur PROCEDURE nama-prosedur;
.;
deklarasi fungsi FUNCTION nama-fungsi;
.;
Bagian Pernyataan
begin
(statement)
;
;
end.
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada awal dari program dan
diakhiri dengan titik koma.
Bagian deklarasi digunakan bila di dalam program digunakan pengenal ( identifier). Identifier dapat
berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu program menggunakan
identifier, Pascal menuntut supaya identifier tersebut diperkenalkan terlebih dahulu sebelum digunakan,
yaitu dideklarasikan terlebih dahulu pada bagian ini.
Beberapa aturan dalam program Pascal :
Akhir sebuah program Pascal ditandai dengan tanda baca titik . setelah END yang paling akhir.
Tanda titik koma ; merupakan pemisah antar instruksi satu dengan lainnya.
Beberapa statement boleh ditulis menjadi satu baris dipisahkan dengan tanda baca titk koma ;
Baris komentar diletakkan diantara tanda (* dan *) atau diantara tanda { dan }
Contoh : Var a : real; (*nilai bilangan pertama*)
b : real; {nilai bilangan kedua}
Statement (pernyataan)
Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer melakukan aksi.
1. Sederhana :
- menandai sebuah item data ke sebuah variabel (assigment statement)
contoh : c := b * 4
- pemanggilan procedure dan goto statement
2. Terstruktur:
- Compound Statement
contoh : begin
read (x) ;
y := x * 2;
write (y)
end.
- Repetitive Statement
contoh : for j := 1 to 10 do
write (count);
- Conditional Statement
contoh : if x > 10 then write (a)
else write (b) ;
Pola susun bahasa Pascal dibentuk dengan menggunakan komponen bahasa pemrograman yang umum,
yaitu :
1. Simbol Dasar
2. Reserved Word (kata pasti)
3. Identifier (penyebut)
1. Simbol Dasar.
Simbol dasar terdiri atas :
1. Simbol huruf, yaitu huruf A sampai dengan Z atau a sampai dengan z. (huruf besar dan
kecil).
2. Simbol angka atau digit yaitu : 0,1,2,3,4,5,6,7,8,9.
3. Simbol khusus, yaitu { } ( ) [ ]+ - * / ; := , = < > <= >= <> :
3. Identifier (sebutan/pengenal)
Identifier merupakan sebuah kata yang digunakan sebagai nama atau sebutan terhadap sesuatu
didalam program. Pemakai dapat mendefinisikan sendiri suatu nama sebagai identifier.
1. Identifier Standar, yaitu identifier yang telah didefinisikan oleh bahasa pascal.
Contoh dari Identifier standar ini antara lain:
abs ln
arctan odb
boolean pread
char round
chr read
cos readln
eof sqr
eoln sqrt
exp succ
Dan masih banyak lagi.
2. Identifier Non Standar; yaitu identifier yang didefinisikan oleh pemakai bahasa pascal;
misalnya;
Nama suatu program Nama suatu variabel
Nama suatu konstanta Nama suatu procedur
Identifier ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
1. terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.
Huruf besar dan huruf kecil dianggap sama.
2. Tidak boleh mengandung blank.
3. Tidak boleh mengandung simbol-simbol khusus, kecuali garis bawah.
4. Panjangnya bebas, tetapi hanya 63 karakter pertama yang dianggap signifikan.
Contoh :
Identifier Keterangan
NasiBungkus Benar
Belajar_Pascal Benar
NO2 Benar
1_dua Salah, karakter pertama harus huruf
Andi&tono Salah, tidak boleh mengandung simbol khusus
Penjuanglan bar Salah, tidak boleh mengandung spasi
Pembahasan:
nilai awal a = 15, b = 4, c = 0, d = 0
kondisi a > b
>> 15 > 4 (True), maka
a = 15 4 = 11
c=0+1=1
d=0+4 =4
>> 11 > 4 (True), maka
a = 11 4 = 7
c=1+1=2
d=4+4=8
>> 7 > 4 (True), maka
a=74=3
c=2+1=3
d = 8 + 4 = 12
>> 3 > 4 (False), maka perulangan dihentikan.
Jadi nilai c = 3, d = 12
Pembahasan:
nilai awal a = 34, b = 11, c = 0, d = 0
kondisi a > b
>> 34 > 11 (True), maka
a = 34 11 = 23
c=0+1=1
d = 0 + 11 = 11
>> 23 > 11 (True), maka
a = 23 - 11 = 12
c=1+1=2
d = 11 + 11 = 22
>> 12 > 11 (True), maka
a = 12 - 11 = 1
c = 2 + 1= 3
d = 22 + 11 = 33
>> 1 > 11 (False), maka perulangan dihentikan.
Jadi nilai c = 3, d = 33
Pernyataan while, pengulangan terhadap pernyataan dilakukan terus selama kondidi bernilai true,
akhir while terjadi jika kondisi awal bernilai false.perhatikan diagram while dibawah.
Contoh:
Program while;
uses wincrt;
var
x : integer;
begin
x := 1 {nilai awal}
while x <= 5 do {kondisi yang menentukan perulangan}
begin
x := x + 1; {untuk menaikan nilai x}
writeln (x);
end;
end.
Hasil
1
2
3
4
5
Pembahasan:
Program diatas akan mengulang pernyataan x:=x +2*i sebanyak 10 kali dari i = 0 sampai 9.
0 = 0 + 2*0
2 = 0 + 2*1
6 = 2 + 2*2
12 = 6 + 2*3
20 = 12 + 2*4
30 = 20 + 2*5
42 = 30 + 2*6
56 = 42 + 2*7
72 = 56 + 2*8
90 = 76 + 2*9
jadi nilai x yang akan dimunculkan adalah 90.
Pembahasan:
0=0+0
1=0+1
3=1+2
6=3+3
10 = 6 + 4
15 = 10 + 5
21 = 15 + 6
28 = 21 + 7
36 = 28 + 8
45 = 36 + 9
jadi outputnya adalah 45.
Utuk soal no 3
program x;
var
i,j,k,l : integer;
begin
for i:= 1 to 2 do
for j:= 1 to 2 do
write (i*j);
end.
Pembahasan:
i * j
1) > 1 * 1 = 1
2*1=2
3*1=3
2) > 1 * 2 = 2
2*2=4
3*2=6
3) > 1 * 3 = 3
2*3=6
3*3=9
karena write jadi hasil yang akan dimunculkan berjejer ke samping 123246369
for to dan for downto dalam Turbo Pacal
PERNYATAAN for to
Pernyataan FOR biasa digunakan untuk melakukan pengulangan yang jumlahnya telah diketahui
sebelumnya, dengan proses mencacah naik.
berdasarkan gambar, variabel bertindak sebagai variabel pengontrol perulangan. variabel akan diisi
dengan nilai, dimulai dari nilai_awal hingga nilai_akhir untuk setiap putaran, dan untuk setiap putaran
pernyataan akan dijalankan. variabel nilai_awal dan nilai_akhir harus bertipe sama dan harus berupa
tipe ordinal dengan nilai_awal harus lebih atau sama dengan nilai_akhir
contoh program:
program for;
uses Crt;
var
x : integer;
begin
for x := 1 to 10 do
writeln (Saya mencoba pernyataan FOR TO);
end.
Perogram diatas akan memunculkan dilayar Saya mencoba pernyataan FOR TO sebanyak 10 tulisan.
contoh program lainnya.
Program For2;
uses wincrt;
var
x : integer;
begin
for x := 1 to 10 do
begin
x:=x+1;
x:=x+2;
writeln (x);
end.
HASIL
1
2
3
4
5
6
7
8
9
10
tetapi jika writeln(x) diganti dengan write (x) akan menghasilkan 1 2 3 4 5 6 7 8 9 10
PROGRAM ForDOWNTO1;
uses wincrt;
var
x : integer;
begin
for x := 10 to 1 do
write (x);
end.
HASIL
10 9 8 7 6 5 4 3 2 1
HASIL 4444333221
Pembahasan :
Ini adalah contoh kasus fungsi dengan mempergunakan rekursi (fungsi yang mampu memangil dirinya
sendiri)
Nilai x awal adalah 5, nilai y awal adalah 3 maka
f(5,3) > 5 * f(5, 3-1) = 5 * 25 = 125
f(5,2) > 5 * f(5, 2-1) = 5 * 5 = 25
f(5,1) > 5 * f(5,1-1) = 5 * 1 = 5
f(5,0) (proses selesai karena y =0)
Jadi yang muncul adalah 125
2. Jika writeln (f(5,3)) diganti menjadi writeln (f(4,5)), hasil dimunculkan adalah
a. 20
b. 9
c. 1024
d. 64
e. 5
Pembahasan:
Kasus ini sama seperti pada soal 1
Nilai x awal adalah 4, nilai y awal adalah 5 maka
f(4,5) > 4 * f(4, 5-1) dengan mempergunakan hasil f( 4,4) > 4 * 256 = 1024
f(4,4) > 4 * f(4, 4-1) dengan mempergunakan hasil f( 4,3) > 4 * 64 = 256
f(4,3) > 4 * f(4,3-1) dengan mempergunakan hasil f( 4,2) > 4 * 16 = 64
f(4,2) > 4 * f(4,2-1) dengan mempergunakan hasil f( 4,1) > 4 * 4 = 16
f(4,1) > 4 * f(4,1-1) = 4 * 1 = 4
fak (4,0) (proses selesai karena y =0)
Jadi yang muncul adalah 1024
Pembahasan
Ingat bentuk dekelarasi dari suatu fungsi
FUNCTION nama_fungsi(daftar_fungsi):tipe;
- daftar parameter berisi sejumlah parameter
- tipe menyatakan tipe dari hasil fungsi
- Jika fungsi tidak memiliki parameter, tanda () tidak perlu disertakan.
jadi jawabannya adalah e.function info(a:real);
JUDUL FUNGSI
Untuk pemberian judul fungsi, aturannya sama seperti pemberian pengenal (identifier).
dari contoh fungsi kali mempunyai 2 parameter (A dan B) yang masing-masing bertipe Integer, dengan
hasil fungsi bertipe Integer.
DEKLARASI FUNGSI
Deklarasi fungsi mempunyai bentuk seperti deklarasi program, yang mengandung Variabel, type,
konstanta bahkan prosedur atau fungsi.
PERNYATAAN
Contoh
Function Kali(A,B : Real): Real;
begin
Kali := A * B;
end;
Artinya fungsi kali akan memberikan nilai berupa penjumlahan dari parameter A dan B.
Dari program diatas, terdapat dua variabel yaitu Variabel global dan variabel lokal. variabel global
merupakan variabel umum dalam program yang dapat
dipangil oleh program dan oleh fungsi. Sedangkan variabel lokal hanya dapat diakses oleh fungsi. Hasil
7.0000000E+00 (tipe Real) didapat dari Fungsi, sedangkan nilai 10 di proleh dari penjumlahan nilai x
dan y dalam Program Utama.