SOAL OLIMPIADE MATEMATIKA SD SMP VERSI 1

Soal Olimpiade Informatika
1) Diketahui empat bilangan bulat positif W,X,Y, dan Z yang juga memenuhi W 0, maka tanda ‘*’ akan
dicetak sebanyak berapa kali?
procedure f(n:integer);
begin
for i:=1 to n do
for j:=1 to n do
for k:=1 to n do write(‘***’);
end;
A.
B.
C.
D.
E.

3n
3 + n3
3n2
3n3
(3n)3
56) Apakah output dari potongan progam berikut:


for i:=3 to 20 do
begin
x := 0;
for j:=2 to i-1 do
if i mod j = 0 then x := x+1;
if x = 0 then write(i,’ ‘);
end;

13

Soal Olimpiade Informatika
A.
B.
C.
D.
E.

3 5 7 9 11 13 15 17 19
3 6 9 12 15 18

3 5 6 9 10 12 15 18
3 5 7 11 13 17 19
3 5 8 13
57) Apakah output dari potongan program berikut:

x := 0;
for i:=1 to 6 do
for j:=7 to 18 do
for k:= 19 to 30 do
x := x + 1;
writeln(x);
A.
B.
C.
D.
E.

30240
3024
3240

8640
864

58) Perhatikan potongan program berikut. Jika X dan Y adalah bilangan bulat positif, apakah hasil dari
f(X,Y) ?
function f(x,y : integer) : integer;
begin
f := 0;
while y > 0 do
begin
f := f + x * (y mod 2);
x := x * 2;
y := y / 2;
end;
end;
A.
B.
C.
D.
E.


X pangkat Y
Hasil kali X dengan Y
Faktor Persekutuan Terbesar (FPB) dari X dan Y
Penjumlahan bilangan-bilangan dari X sampai Y
Kelipatan Persekutuan Terkecil (KPK) dari X dan Y
59) Perhatikan potongan program berikut. Apakah hasil dari f(8) ?

function f(n : integer) : integer;
begin
if n 0 then f(n-1);
for i:=1 to n do write(‘A’);
end;
A.
B.
C.
D.
E.

26

325
300
25
351

63) Perhatikan potongan program berikut. Apakah hasil dari f(5) ?
function f(n : integer) : integer;
begin
f := 0;
i := 0;
while i = i do
begin
f := f + (j – i) * i;
j := j – 2;
end;
i := i + 1;
end;
end;
A.
B.


156
208

16

Soal Olimpiade Informatika
C.
D.
E.

224
122
365
64) Perhatikan potongan program berikut. Apakah hasil dari f(216, 16) ?

function f(x,y : integer) : integer;
begin
n := 0;
f := 0;

while x > 0 do
begin
f := f + (x mod y);
x := x / y;
end;
end;
A.
B.
C.
D.
E.

21
24
102
104
138

65) Apakah output dari potongan program berikut:
x := 1;

for i:= 1 to 100 do x := x + i * i;
writeln(x);
A.
B.
C.
D.
E.

5050
5051
7501
10100
10101

Potongan program berikut untuk soal 66-68
function f(a,b,c : integer) : integer;
begin
f := -1;
while a b do


17

Soal Olimpiade Informatika
begin
m := (a + b) div 2;
if arr[m] = c then
begin
f := m;
break;
end else if arr[m] < c then a := m + 1 else b := m – 1;
end;
end;
Dan isi array arr[0..7] adalah {1, 2, 3, 4, 5, 6, 7, 8}
66) Apakah isi dari f(0,7,8) ?
A.
3
B.
8
C.
7

D.
6
E.
-1
67) Apakah isi dari f(0, 7, 10) ?
A.
10
B.
0
C.
-1
D.
5
E.
7
68) Potongan program di atas adalah implementasi dari:
A.
Counting Sort
B.
Quick Sort

C.
Binary Search
D.
Bubble Sort
E.
Linear Search
69) Perhatikan potongan program berikut. Untuk setiap bilangan bulat N, apakah hasil dari f(N) ?
function f(n : integer) : integer;
begin
if n = 0 then f := 0 else
begin
a := 0;
f := 1;
for i:=2 to n do
begin
c := a + f;
a := f;
f := c;
end;
end;
end;
A. Dua pangkat N

18

Soal Olimpiade Informatika
B.
C.
D.
E.

N faktorial
Bilangan fibonanci ke N
Permutasi N bilangan
Jumlah faktor-faktor dari N

70) Kompleksitas pada kasus terburuk untuk algoritma Merge Sort adalah:
A.
n3
B.
n * log(n)
C.
n2
D.
2n
E.
n
71) Potongan program berikut akan menukar nilai dari x dan y, kecuali:
A.
x := x + y;
y := x – y;
x := x – y;
B.
x := x XOR y;
y := y XOR x;
x := x XOR yl
C.
x := x * y;
y := x / y;
x := x / y;
D.
z := x;
x := y;
y := z;
E.
x := x + y;
x := x – y;
y := y – x;

72) Dalam sebuah pesta, banyaknya pengunjung wanita dibanding pengunjung pria adalah 8 : 5. Dua belas
pengunjung wanita dan lima pengunjung pria pergi meninggalkan pesta tersebut sehingga perbandingan
wanita tehradap pria sekarang menjadi 3:2. Berapa orangkah jumlah pengunjung pesta pada awalnya?
A.
78
B.
104
C.
117
D.
130
E.
135
73) Jika 0 < s*t < 1, maka di antara pernyataan berikut ini, manakah yang pasti benar?

19

Soal Olimpiade Informatika
A.
B.
C.
D.
E.

-1 < s < 0 dan -1 < t < 0
s > 1 dan t < -1
-1 < s < 0 dan 0 < t < 1
s < -1 dan 0 < t < 1
s < -1 dan t < -1

74) Pernyataan manakah dari berikut ini yang benar? (a, b, c bilangan real dan bukan nol)
I.
1/a kurang dari a
II.
(a+b)/2a sama dengan 2b/(b+a) jika a dan b sama
III.
(a+c)/(b+c) lebih dari a/b
A.
B.
C.
D.
E.

Hanya I
Hanya II
Hanya III
Hanya I dan III
I, II, dan III

75) Sebuah ujian akan diberi nilai antara 0 sampai 100. Budi sudah melakukan ujian 4 kali sebelumnya, dan
pada ujian yang ke-5 dia mendapat nilai 75. Berapakah rata-rata nilai yang tidak mungkin dimiliki Budi?
A.
96
B.
75
C.
57
D.
24
E.
15
76) Berapa banyak bilangan antara 100 dan 300 yang dimulai atau diakhiri dengan angka 2?
A.
20
B.
40
C.
100
D.
110
E.
180

77) Sebuah kereta barang meninggalkan stasiun pada jam 12:00 siang, bergerak ke arah utara dengan
kecepatan 50 km per jam. Pada pukul 13:00, sebuah kereta penumpang meninggalkan stasiun yang
sama, bergerak ke arah selatan dengan kecepatan 60 km per jam. Pada jam berapakah kedua kereta
tersebut berjarak 380 km?
A.
15:00
B.
16:00
C.
16:30
D.
17:00
E.
17:30

20

Soal Olimpiade Informatika

78) Jika x dan y adalah dua buah bilangan prima, manakah di antara berikut ini yang tidak mungkin menjadi
selisih antara x dan y?
A.
1
B.
3
C.
9
D.
15
E.
23
79) Dua buah mobil X dan Y berjarak 5 mil dan suatu saat mereka akan bertemu di suatu titik. Mobil X
bergerak secara lurus ke arah utara dan mobil Y bergerak secara lurus ke arah timur. Apabila posisi X
satu mil lebih dekat daripada posisi Y terhadap titik pertemuan kedua mobil tersebut, berapa mil posisi
dari Y terhadap titik pertemuan tersebut?
A.
1
B.
2
C.
3
D.
4
E.
6
80) Jika panjang dan lebar dari segiempat A adalah setengah dari panjang dan lebar segiempat B, maka
perbandingan luas daerah segiempat A dan B adalah:
A.
1/4
B.
1/2
C.
1/1
D.
2/1
E.
4/1
81) Jika luas sebuah segiempat adalah 12, berapakah kelilingnya?
A.
7
B.
8
C.
14
D.
16
E.
Tidak dapat ditentukan
82) Jarak antara Jakarta dan Bandung adalah 120 km. Sebuah mobil berjalan dari Jakarta ke Bandung
dengan kecepatan 60 km/jam dan kembali melalui rute yang sama dengan kecepatan 40 km/jam. Berapa
km/jam kecepatan rata-rata untuk kedua perjalanan tersebut?
A.
48
B.
50
C.
52
D.
56
E.
58
83) Jika w 10% lebih kecil dari x, dan y 30% lebih kecil dari z, seberapa besar nilai wy lebih kecil dari xz?
A.
10%
B.
20%
C.
37%
D.
40%
E.
100%

21

Soal Olimpiade Informatika
84) Ada berapa cara untuk mewarnai 3 buah kubus, dimana setiap kubus hanya boleh diwarnai dengan satu
warna dan ada 3 pilihan warna yang bisa dipilih yaitu merah, kuning, dan hijau? Perhatikan bahwa
dalam kasus ini urutan warna tidak dipertimbangkan.
A.
2
B.
3
C.
9
D.
10
E.
27
85) Jika x adalah bilangan bulat dan y = -2x – 8, berapakah nilai minimum dari x yang masih menyebabkan
nilai y kurang dari 9?
A.
-9
B.
-8
C.
-7
D.
-6
E.
-5
86) Dalam sebuah bilangan decimal yang berulang 0,097531097531…, berapakah digit ke 44 di sebelah
kanan koma?
A.
0
B.
1
C.
3
D.
7
E.
9

87) Sebuah pita dipotong menjadi 3 bagian yang panjangnya sama. Ketiga potongan tersebut kemudian
dipotong kembali menjadi 4, 6 dan 8 bagian yang berukuran sama. Jika setiap bagian yang terbentuk
memiliki panjang yang bernilai bulat, berapakah minimum panjang dari pita tersebut?
A.
24
B.
36
C.
48
D.
54
E.
72
88) Rata-rata dari 6 bilangan adalah 6. Jika 4 buah bilangan dari 6 bilangan tersebut masing-masing
dikurangi dengan 3, berapakah rata-rata dari keenam bilangan tersebut sekarang?
A.
3/2
B.
2
C.
3
D.
4

22

Soal Olimpiade Informatika
E.

9/2

89) Populasi sebuah kota naik sebesar 50% setiap 50 tahun. Jika populasi kota tersebut pada tahun 1950
adalah 810, pada tahun berapakah populasinya 160?
A.
1650
B.
1700
C.
1750
D.
1800
E.
1850
90) Di dalam suatu keranjang terdapat sejumlah bola kelereng: 5 butir berwarna kuning, 6 butir berwarna
biru dan 4 butir berwarna merah. Dengan ditutup matanya, Adi diminta untuk mendapatkan 3 butir
kelereng yang warnanya sama. Untuk memastikan bahwa ia mendapatkan ketiga itu minimal berapa
butir kelereng yang harus ia ambil dari keranjang?
A.
3
B.
5
C.
7
D.
9
E.
11

Deskripsi Untuk Soal 91-93
Enam (6) orang siswa menerima hadiah sesuai berdasarkan nilai hasil ujian Matematika dan ujian
Fisika mereka. Nilai tertinggi yaitu Rp. 6000,- diberikan pada nilai terbaik, kemudian berturut-turut Rp.
5000,-, Rp. 4000,-, dan seterusnya pada nilai terbaik kedua, ketiga, hingga terakhir yang juga menerima
Rp. 1000,-. Dari kedua hasil ujian masing-masing dipastikan setiap siswa mendapatkan hadiah dari
masing-masing mata ujian. Siapa mendapat berapa tidak dijelaskan, yang diketahui adalah informasi
yang menyatakan bahwa:






Nilai matematika Gina lebih besar dari Mira sementara nilai fisika Gina lebih kecil dari Bunga.
Nilai matematika Heni lebih besar dari Gina dan nilai fisika Heni lebih kecil dari Lina.
Nilai matematika Cici lebih kecil dari Gina tapi nilai fisika Cici lebih besar dari Gina.
Nilai matematika Mira lebih besar dari Lina dan nilai fisika Mira lebih besar dari Cici.
Nilai fisika Lina lebih kecil dari Gina.

23

Soal Olimpiade Informatika

91) Banyaknya siswa yang dapat dipastikan tidak menerima Rp. 6000, dari sekurangnya satu mata ujian apa
saja adalah
A.
1
B.
4
C.
2
D.
3
E.
5
92) Siapakah di antara mereka yang dapat dipastikan menerima total hadiah lebih besar dari Lina?
A.
Hanya Gina
B.
Hanya Mira
C.
Hanya Gina dan Heni
D.
Hanya Gina dan Mira
E.
Gina, Mira, dan Heni
93) Siapakah di antara nama-nama berikut ini yang mungkin memiliki total hadiah paling besar ?
A.
Cici
B.
Gina
C.
Heni
D.
Bunga
E.
Mira

Deskripsi Untuk Soal 94-97
Seorang pengelana berkeliling dari satu kota ke kota lain. Kota-kota yang dapat dikunjungi adalah A,
B, C, D, E, dan F. Ia menentukan aturan sebagai berikut. Jika hari ini ia berada di kota A maka
besoknya ia akan pergi ke kota B atau D. Jika hari ini ia berada di kota B maka besoknya ia akan pergi
ke kota D atau E. Jika hari ini ia berada di kota C maka besoknya ia pergi ke kota D atau F. Jika hari ini
ia berada di kota D maka besoknya ia pergi ke kota E atau F. Jika hari ini ia berada di kota E maka
besoknya ia pergi ke kota A atau C. Jika hari ini ia berada di kota F maka besoknya ia pergi ke kota B
atau E.

94) Pada suatu hari ia berada di kota A. Berapa hari yang ia perlukan paling sedikitnya agar ia dapat berada
di kota A kembali dengan syarat ia harus sempat melalui C minimal satu kali?
A.
7
B.
6
C.
3
D.
8
E.
4
95) Jika ia dari A kemudian selajnutnya ia memutuskan tidak akan pernah kembali ke kota A dan tidak akan

24

Soal Olimpiade Informatika
pernah pergi ke kota F, maka 5 hari kemudia di kota manakah ia mungkin berada?
A. E dan B
B. E dan C
C. D dan C
D. D dan E
E. B dan C
96)
A.
B.
C.
D.
E.

Pada suatu hari ia berada di kota A, 3 hari kemudian ia berada di kota-kota ini, kecuali?
F
A
E
D
C

97) Jika pada hari Minggu ia berada di A kemudian 2 hari selanjutnya (hari Selasa) tidak berada di F dan
besoknya lagi (hari Rabu) tidak berada di C, kota manakah dari berikut ini yang ia tidak akan mungkin berada
pada keesokan harinya (hari Kamis)?
A. B
B. D
C. E
D. F
E. C

Deskripsi Untuk Soal 98-100
Ada 3 wanita, yaitu A, B, dan C. Berikut ini adalah sejumlah informasi mengenai mereka:
[1] Ada 2 orang yang cerdas, 2 orang cantik, 2 orang artistik, dan 2 orang kaya.
[2] Tiap orang hanya mempunyai sifat di atas paling banyak 3 macam.
[3] Mengenai A diketahui bila dia cantik maka dia kaya.
[4] Mengenai B dan C bila dia cantik, maka dia artistik.
[5] Mengenai A dan C bila dia kaya maka dia artistik.
[6] Dari A dan B bila dia cantik maka dia tak cerdas.
[7] B dan C cerdas.
98)
A.
B.
C.
D.
E.

Siapa yang miskin?
A
B
C
A dan B
B dan C

99)
A.
B.
C.
D.
E.

Siapakah yang hanya memiliki tepat dua sifat-sifat yang disebutkan pada informasi [1] ?
B
A dan C
A
B dan C
C

100) Siapakah yang sudah cantik, juga cerdas?

25

Soal Olimpiade Informatika
A.
B.
C.
D.
E.

A
B
C
A dan C
B dan C

26