Anda di halaman 1dari 8

87.

LayoutprogramdalamPascalyangbenaradalah:
a.

end

program

type
var
[program

[identifier];
begin
[identifier];
[identifier];
utama];

b.program[identifier]
var[identifier]
begin
[programutama]
end;
procedure[identifier]
begin
end.
c.begin
end.
d.var[identifier]
begin
[programutama]
end;
e.type[identifier]
var[identifier]
begin
program[identifier]
[programutama]
end.
Pembahasan:
Struktur

prorgam

pascal

program
uses
label
const
type
var[nama_variabel];
proceduresatu;
begin
{statemenuntukprosedursatu}
end;

yang

benar

adalah:

[nama_program];
[nama_unit];
[nama_label];
[nama_konstanta];
[nama_tipe];

proceduredua;
begin
{statemenuntukprosedursatu}
end;
functiontiga:tipedata;
begin
{statemenuntukprosedursatu}
end;
begin{awalprogramutama}
{statemenstatemendariprogramutama}

end.

{akhir

dari

prorgam

utama}

Dengan pengetahuan struktur program Pascal di atas, maka dapat disimpulkan struktur program Pascal yang benar
adalah
opsi
c.
Kesalahan untuk opsi d adalah bahwa akhir dari program utama selalu menggunakan END. (menggunakan titik)
bukan END; (bukan titik koma)
TOP

Contoh

soal

deklarasi

(Seleksi tingkat propinsi TOKI 2004)


71.Deklarasiyangsalah:
a.

const

i:integer=100;
b.

var

x:array[1..100][1..100]

of

byte
c. type Hari=(Senin,Selasa, Rabu, Kamis, Jumat, Sabtu, Minggu)
d.

var

_data=record

nama:string[10];

nis:string[10];

end;
e.

var

t:array['a'..'z']

of

integer

Pembahasan:
Opsi a. BENAR, deklarasi tersebut merupakan deklarasi konstanta bertipe. Untuk mendeklarasikan konstanta bertipe
adalah:
constidentifier:tipedata=nilai
opsi

b.

SALAH.

Cara

mendeklarasikan

tipe

ada

array

pada

bahasa

Pascal

adalah:

type identifier = array [tipe_indeks] of tipe_elemen


dimana tipe_indeks adalah sembarang tipe dan tipe_elemen harus bertipe ordinal.
opsi c. BENAR, deklarasi tersebut adalah cara mendeklarasikan tipe enumerasi

opsi d. BENAR, deklarasi tersebut adalah cara mendeklarasikan tipe record


opsi e. BENAR, deklarasi tersebut adalah cara mendeklarasikan tipe array
Jawab b. varx:array[1..100][1..100]ofbyte
TOP

Contoh

soal

Tipe

data

(Seleksi awal TOKI 2003)


55. Untuk mengimplementasikan matriks dalam bahasa Pascal, kita pasti
menggunakandata:
a.
b.
c.
d.
e.set

record
object
pointer
array

Pembahasan:
Matriks adalah sekumpulan data numerik yang tersusun dalam bentuk baris dan kolom yang mempunyai tipe data
sama.
opsi a. record adalah sebuah tipe data terstruktur yang dapat menampung data dengan tipe data yang berbedabeda.
opsi b. object adalah tipe data terstruktur yang dapat terdiri dari tipe data yang berbeda serta header method. Yang
dimaksud method dalam sebuah objek adalah kumpulan modul yang dapat mengoperasikan objek tersebut.
opsi c. pointer adalah tipe data yang bersifat dinamis.
opsi d. array adalah sebuah tipe data terstruktur yang mempunyai komponen dalam jumlah yang tetap dan setiap
komponen mempunyai tipe data yang sama.
opsi e. set adalah sebuah tipe data terstruktur yang mempunyai tipe data sama dan urutan datanya tidak
diperhatikan.
Jawaban: b. array
TOP

Contoh

soal

statemen

terstruktur

(Seleksi awal TOKI 1997)


30.

Penggalan
repeat

program
b:=b+1;a:=ab;until

sbb:
a:=10;b:=0;

a>b

Berapahargaayangdicetak?

writeln(a,b);

a.
b.
c.
d.salahsemua

10
1
9

Pembahasan:
Statemen repeat until adalah statemen perulangan dengan pengujian kondisi di bawah. Perulangan dijalankan
hingga
kondisi
pada
until
terpenuhi.
Dari soal di atas, dapat dibuat tabel untuk mempermudah perhitungan nilai a.
Nilai

b
Nilai

0
19statemenpertamab:=b+1;a:=ab

a
10

dari tabel di atas, kondisi a>b telah terpenuhi, sehingga nilai akhir dari a adalah 9
Jawaban: c. 9
TOP

Contoh

soal

Prosedur

dan

fungsi

(Seleksi awal TOKI 1998)


13.Manakahyangsalah:
a.

function
b.

function

c.

function

d.

function
e.semuadeklarasidiatasbenar

Gamma(var
Gamma(var

Gamma(I:Real):Real;
I:Real):Real;

I):Real;
Gamma(I:Real);

Pembahasan:
Deklarasi function pada Pascal adalah:
function

identifier
atau
functionidentifier(parameters):type;

type;

Sebuah fungsi harus mempunyai nama fungsi (identifier), formal parameter (parameters) dan harus
mempunyai tipe hasil (type). Pada bahasa Pascal, sebuah prosedur atau fungsi dapat terdiri dari daftar formal
parameter yang cara penulisannya: (params; params; params). Tiap grup formal parameter harus
mengikuti
cara
penulisan
di
bawah
ini:
identifier,

identifier:

type

value

parameters

var identifier, identifier: type { disebut dengan variable parameters }


varidentifier,identifier{variableparameterstakbertipe}
Dengan mengetahui format penulisan di atas, dapat diketahui bahwa opsi d salah, karena tidak mempunyai tipe
hasil. Sedangkan opsi c dapat dibenarkan, karena parameter pada fungsi merupakan variabel parameter tak bertipe.
Jawaban: d. functionGamma(I:Real);
TOP

Contoh

soal

Rekursi

(Seleksi awal TOKI 1997)


21.PenggalanprogramPascalsbb:

end;

Function
if

n=0

fakto(n:byte):longint
begin
then

fakto:=0
else
fakto:=n*fakto(n1)

functiondiatasbiladipanggildenganstatemeny:=fakto(5);makayberharga:
a.
b.
c.
d.salahsemua

0
5
120

Pembahasan:
Yang dimaksud dengan rekursi adalah sebuah prosedur atau fungsi yang memanggil dirinya sendiri. Pada fungsi di
atas, fungsi fakto dipanggil dengan parameter n-1, sehingga jika dipanggil fakto(5), maka proses akan nampak
seperti diagram berikut:

Mula-mula FAKTO(5) dipanggil sehingga menyebabkan statemen n * FAKTO(n-1) dieksekusi, yang bemilai:
5
*
FAKTO(4).
FAKTO(4)
akan
mengeksekusi
statemen:
4
*
FAKTO(3).
FAKTO(3)
akan
mengeksekusi
statemen:
3
*
FAKTO(2).
FAKTO(2)
akan
mengeksekusi
statemen:
2
*
FAKTO(1).
FAKTO(1)
akan
mengeksekusi
statemen:
1
*
FAKTO(0),
FAKTO(0)
sendiri
bemilai
0,
sehingga
statemen:
1 * FAKTO(0) bemilai 0, yang berarti FAKTO(1) menghasilkan nilai 0 yang dikembalikan pada FAKTO(2),
2
*
FAKTO(1)
->
2
*
0
=
0.
Hasil
0
ini
dikembalikan
pada:
3
*
FAKTO(2)
->
3
*
0
=
0.
Hasil
0
ini
dikembalikan
pada:
4
*
FAKTO(3)
->
4
*
0
=
0.
Hasil
0
ini
dikembalikan
pada:
5 * FAKTO(4) -> 5 * 0 = 0.
Jawaban a. 0
TOP

Contoh

soal

File

(Seleksi Tingkat Propinsi TOKI 2004)


144. Bagaimana cara membuat sebuah file teks baru dengan fungsi standar
Pascal?

a.varF:Text;
begin
Assign(F,MYTEXT.TXT);
Reset(F);
end.
b.varF:Text;
begin
Assign(F,MYTEXT.TXT);
Rewrite(F);
end.
c.varF:Text;
begin
Rewrite(F,MYTEXT.TXT);
end.
d.varF:Text,
begin
Assign(F,MYTEXT.TXT);
Rewrite(F,128);
end.

e.varF:Text
begin
Assign(F,MYTEXT.TXT);
Append(F);
end.
Pembahasan:
Text adalah salah satu dari tipe data file. Sebuah file yang dibuka dengan tipe data text, akan mempunyai
karakteristik terdiri dari suatu baris dan setiap baris diakhir dengan tanda akhir baris (end of line). Akhir dari file text
adalah tanda End of file (CTRL-Z).
Untuk membuat file pada Turbo Pascal adalah dengan menggunakan statemen: REWRITE, deklarasi untuk perintah
REWRITE adalah:
procedureRewrite(varF:File[;Recsize:Word]);
di mana F adalah sembarang tipe file, sedangkan Recsize adalah digunakan apabila F adalah file tidak bertipe.
Jawaban: b.
TOP

Contoh
(Seleksi Tingkat Propinsi TOKI 2004)
138.Pemyataanmanakahyangvalid?

soal

Pointer

a.

b.

c.

d.

e.var^A:Integer;

var
var
var
var

A:^Integer;
A:@Integer;
A:Integer^;
A^:Integer;

Pembahasan:
Tipe pointer adalah tipe data khusus yang bersifat dinamis. Bentuk umum dari deklarasi pointer adalah:
typeidentifier=^tipedata
Tanda ^ di depan nama tipe data harus ditulis seperti apa adanya, berarti menunjukkan bahwa identifier adalah
bertipe pointer. Tipedata yang digunakan bisa berupa sembarang tipe data seperti Integer, Char, Boolean ataupun
Record.
Jawaban: a. varA:^Integer;

Anda mungkin juga menyukai