Post on 03-Jan-2016
description
BAGIAN A: ARITMATIKA DAN LOGIKA
1. Dalam suatu deret bilangan bulat {xi, i > 0}, xi = i! x1. (bilangan berikutnya = i faktorial dari
bilangan pertama). Jika jumlah delapan bilangan pertama berurutan adalah 416907 maka
bilangan kesepuluhnya adalah ...
Jawaban : “ “32659200”
Pembahasan :
1! a + 2! a + 3! a +..+ 8! a = 416907; a=9. U10 = 10! * 9 = 3628800 * 9 = 32659200
2. Selisih jumlah umur Barnie dan Jecky 6 tahun yang lalu dan jumlah umur Barnie dan Jecky 5
tahun yang akan datang merupakan dua kali dari selisih umur Zeta 6 tahun yang lalu dan 5
tahun yang akan datang. Selisih umur Barnie dan Zeta adalah 31 . Jumlah umur Jecky dan
Zeta 1 tahun yang lalu adalah 70. Umur Jecky 7 tahun yang lalu merupakan dua kali dari
umur Barnie 7 tahun yang lalu. Berapa jumlah umur Barnie, Jecky, dan Zeta 3 tahun yang
lalu?
Jawaban : “79”
Pembahasan:
Kita misalkan Barnie adalah a, Jecky adalah b,dan Zeta adalah c. Dari informasi di atas, dapat
diperoleh persamaan sebagai berikut
c-a = 31 a = c – 31 .… (i)
(b-1)+(c-1) = 70 b+c = 72 b = 72-c …. (ii)
(b-7) = 2* (a-7) 2a-b = 7 …. (iii)
Dari persamaan di atas, dapat diperoleh persamaan (2*(c-31)) - (72-c) = 7. Maka diperoleh
nilai c = 47; a = 16; b = 25. Maka jumlah umur Barnie, Jecky, dan Zeta 3 tahun yang lalu
adalah (a-3) + (b-3) + (c-3) = 79
3. Agar mudah diingat, Pak Dengklek membuat password untuk komputernya berupa permutasi
dari huruf-huruf pada namanya, yaitu ‘D’, ‘E’, ‘N’, ‘G’, ‘K’, ‘L’, ‘E’, dan ‘K’. Suatu ketika
ia lupa password komputernya, dan memutuskan untuk mencoba-coba semua kemungkinan
yang ada. Berapakah waktu yang dibutuhkan untuk mencoba semua kemungkinan password
yang ada, jika sekali mencoba password waktu 10 detik?
Jawaban : ”100800”
Pembahasan :
(C(8,8) / C(2,2) * C(2,2) ) = 10080, x10 = 100800 karena sekali mencoba password
membutuhkan waktu 10 detik.
Berikut ini merupakan deskripsi untuk soal nomor 4-5
Sekumpulan pulau dihubungkan oleh beberapa buah jembatan. Ada jembatan yang kecil,
sehingga hanya muat untuk perjalanan satu arah, ada juga jembatan yang lebih besar yang
muat untuk perjalanan dua arah. Ada jembatan satu arah dari B ke A, dari E ke D, dan dari
C ke F. Sedangkan, ada jembatan dua arah antara A-F, B-E, dan C-D.
4. Tuliskan SEMUA pasangan pulau asal-pulau tujuan yang tidak mungkin ada perjalanan dari
pulau asal ke pulau tujuan. Misalnya “A-F”, berarti orang dari pulau A tidak bisa pergi menuju
pulau F.
Jawaban : A-B, A-C, A-D, A-E, D-B, D-E, C-B, C-E, F-B, F-C, F-D, F-E
Pembahasan :
Yang biru adalah jembatan satu arah, yang merah adalah jembatan dua arah.
Jadi, jawaban yang tepat adalah A-B, A-C, A-D, A-E, D-B, D-E, C-B, C-E, F-B, F-C, F-D,
F-E
5. Pemerintah memutuskan untuk meng-upgrade sebuah jembatan satu arah menjadi jembatan
dua arah, sehingga semua pulau bisa terhubung. Di antara pasangan B-A, E-D, dan C-F
(terhubung oleh jembatan satu arah), tentukan jembatan yang mana yang harus di-upgrade
sehingga semua pulau dapat terhubung (setiap orang dari satu pulau bisa pergi ke semua pulau
lainnya).
Jawaban : A-B
Pembahasan :
Yang biru adalah jembatan satu arah, yang merah adalah jembatan dua arah.
Jadi, jawaban yang tepat adalah A-B
A B C
DEF
A B C
DEF
6. Pada suatu desa, tersebar suatu surat horor berantai yang dimulai dari seorang pria yang
mengirimkan surat ke 10 orang lainnya. Setiap orang yang menerima surat tersebut diminta
untuk mengirim surat tersebut kepada 10 orang lainnya. Sebelum mengirim surat kepada 10
orang lainnya, si penerima surat tersebut harus menulis nama nya pada surat tersebut,
sehingga surat tersebut akan mengandung daftar nama para pengirim sebelumnya. Bila sudah
terdapat 5 buah nama, maka tiap orang yang menerima surat tersebut harus mengirimkan 1
bunga mawar ke nama yang berada pada urutan paling atas pada daftar tersebut. Nama
tersebut kemudian dihapus dan sang penerima menambahkan namanya pada urutan paling
bawah dari daftar nama itu. Asumsikan semua penerima surat akan mengirimkan surat
tersebut dan tidak ada yang menerima surat lebih dari sekali, berapakah bunga mawar yang
akan didapat seseorang bila mengikuti surat berantai tersebut?
Jawaban : 100000
Pembahasan :
Misalkan X adalah orang yang mengirimkan surat berantai. Maka, akan ada 10 orang yang
menerima surat dari X dengan keadaan dimana nama X berada pada urutan ke-5 di daftar
nama pengirim. Ke-10 orang tersebut masing-masing mengirimkan surat ke 10 orang lain.
Dengan kata lain, ada 100 orang yang akan menerima surat dimana nama X berada pada posisi
ke-4. Lalu, akan ada 1000 orang yang menerima surat dimana nama X berada pada posisi ke-
3. Begitu seterusnya, sehingga akan ada 100000 orang yang akan menerima surat dimana
nama X berada pada posisi-1. Dengan kata lain, akan ada 100000 orang yang masing-masing
mengirimkan 1 bunga mawar kepada X.
Berikut ini merupakan deskripsi untuk soal nomor 7-8
Pak Ali bingung. Istrinya baru saja melahirkan seorang anak. Ia sedang berpikir keras untuk
menemukan nama yang indah untuk anaknya. Pak Ali ingin nama anaknya terdiri dari 6
huruf. Sebagai peserta OSP yang cukup pintar, bantulah Pak Ali untuk menghitung
banyaknya kemungkinan nama anak jika :
7. Nama tersebut tidak mengandung huruf yang berulang dengan syarat nama dimulai dari huruf
S, atau memuat huruf TY di digit ke-2 dan ke-3, atau diakhiri dengan huruf ZEN.
Jawaban : “6630142”
Pembahasan :
Misal :
A adalah banyak kombinasi nama 6 huruf yang dimulai dengan huruf S
B adalah banyaknya kombinasi nama 6 huruf yang mengandung huruf TY di posisi ke-2 dan
ke-3
C adalah banyaknya kombinasi nama 6 huruf yang diakhiri dengan huruf ZEN.
Maka,
A = 1 x P(25,1) x P(24,1) x P(23,1) x P(22,1) x P(21,1) = 6375600
B = P(24,1) x 1 x 1 x P(23,1) x P(22,1) x P(21,1) = 255024
C = P(23,1) x P(22,1) x P(21,1) x 1 x 1 x 1 = 10626
AB = banyak kombinasi nama 6 huruf yang dimulai dengan huruf S dan mengandung
huruf TY di posisi ke-2 dan ke-3
= 1 x 1 x 1 x P(23,1) x P(22,1) x P(21,1)
= 10626
AC = banyak kombinasi nama 6 huruf yang dimulai dengan huruf S dan diakhiri dengan
huruf ZEN
= 1 x P(22,1) x P(21,1) x 1 x 1 x 1
= 462
BC = banyak kombinasi nama 6 huruf yang mengandung huruf TY di posisi ke-2 dan ke-
3 serta diakhiri oleh huruf ZEN
= P(21,1) x 1 x 1 x 1 x 1 x 1
= 21
ABC= banyaknya kombinasi nama 6 huruf yang diawali oleh huruf S, mengandung huruf
TY di posisi ke-2 dan ke-3, dan diakhiri oleh huruf ZEN
= 1 x 1 x 1 x 1 x 1 x 1
= 1
A + B + C – (AB) – (BC) – (AC) + (ABC)
= 6375600 + 255024 + 10626 – 10626 – 21 – 462 + 1
= 6630142
8. Nama tersebut boleh mengandung huruf yang berulang dengan syarat nama dimulai dari huruf
S, atau memuat huruf TY di digit ke-2 dan ke-3, atau diakhiri dengan huruf ZEN.
Jawaban : “12337651”
Pembahasan :
A = 1 x P(26,1) x P(26,1) x P(26,1) x P(26,1) x P(26,1) = 11881376
B = P(26,1) x 1 x 1 x P(26,1) x P(26,1) x P(26,1) = 456976
C = P(26,1) x P(26,1) x P(26,1) x 1 x 1 x 1 = 17576
AB = 1 x 1 x 1 x P(26,1) x P(26,1) x P(26,1)
= 17576
AC = 1 x P(26,1) x P(26,1) x 1 x 1 x 1
= 676
BC = P(26,1) x 1 x 1 x 1 x 1 x 1
= 26
ABC = 1 x 1 x 1 x 1 x 1 x 1
= 1
A + B + C – (AB) – (BC) – (AC) + (ABC)
= 11881376 + 456976 + 17576 – 17576 – 26 – 676 + 1
= 12337651
9. Diketahui persamaan sebagai berikut :
𝑀(𝑛) = {
1 , 𝑛 = 02𝑀(𝑛 − 3) , 𝑛 𝑔𝑎𝑛𝑗𝑖𝑙
3𝑀(𝑛 + 1) − 2 , 𝑛 𝑔𝑒𝑛𝑎𝑝
Berapakah nilai M(12)?
Jawaban : “27994”
Pembahasan :
10. Tiga orang dari kami membuat sebuah taruhan. Pertama, Pak Dengklek menang dari Pak
Ganesh sebanyak yang dimiliki Pak Dengklek pada mulanya. Selanjutnya, Pak Ganesh
menang dari Pak Blangkon sebanyak uang Pak Ganesh yang tadi tersisa pertama. Lalu, Pak
blangkon menang dari Pak Dengklek sebanyak uang yang dimiliki Pak Blangkon sebelumnya.
Permainan ini berakhir dengan nilai uang kami sama. Saya memulai permainan ini dengan 50
sen. Siapakah saya?
Jawaban : Pak Ganesh
Pembahasan :
(1)D = 2*D, G = G-D
(2)G = 2*(G-D), B = B-(G-D) =B+D-G
(3)B = 2*(B+D-G), W = 2*D-(B+D-G) = D+G-B
D = D+G-B; G=2*(G-D); B = 2*(B+D-G)
4*G = 5*B and 3*B = 4*D.
Hanya G = 50 yang dapat menghasilkan bilangan bulat. B = 40. D = 30. Maka ia adalah Pak
Ganesh
11. Jika 4! berarti 4.3.2.1=24. Tuliskanlah digit kedua terakhir dari 1! + 2! + 3! + …+ 9999!
Jawaban : “13”
Pembahasan :
Karena 10! , 11! , 12! , dst. digit kedua terakhirnya adalah 0, maka cukup menghitung 1!
sampai 9! = 409113.
Berikut ini merupakan deskripsi untuk soal nomor 12-13
Pada suatu pulau terpencil, terdapat dua suku penduduk asli yang hidup bersama-sama.
Salah satu suku terkenal sebagai suku yang selalu mengatakan kebenaran, sedangkan suku
yang lain adalah suku yang selalu mengatakan kebohongan. Anda tiba di pulau tersebut dan
bertanya kepada seorang penduduk apakah di pulau tersebut terdapat harta karun yang
terpendam atau tidak. Penduduk tersebut menjawab “Ada harta karun di pulau ini jika dan
hanya jika saya selalu mengatakan kebenaran”.
12. Berasal dari suku manakah orang yang menjawab pertanyaan tersebut?
Jawaban: Tidak dapat dipastikan
Pembahasan :
Tidak dapat dipastikan dari suku mana. Tetapi tidak mempengaruhi keberadaan harta karun
13. Apakah ada harta karun di pulau tersebut?
Jawaban : Ya
Pembahasan :
Ya, walaupun tidak dapat dipastikan suku mana yang menjawab pertanyaan.
Ada harta karun di pulau ini jika dan hanya jika saya selalu mengatakan kebenaran
Misalkan
p : saya selalu mengatakan kebenaran
q : ada harta karun di pulau ini
Maka ekspresi logikanya adalah p q
Terdapat 2 kemungkinan kasus :
Kasus 1 : Orang yang memberi jawaban adalah orang yang berasal dari suku yang selalu
mengatakan kebenaran.
Berarti, p bernilai benar dan p q juga bernilai benar. Karena itu, q juga bernilai benar.
Maka, benar bahwa ada harta karun di pulau itu.
Kasus 2 : Orang yang memberi jawaban adalah orang yang berasal dari suku yang selalu
mengatakan kebohongan
Berarti, p bernilai salah dan p q juga bernilai salah.
Dari tabel biimplikasi, terlihat bahwa :
p q p q
T T T
T F F
F T F
F F T
Terlihat bahwa jika p salah dan p q juga salah, maka q bernilai benar. Maka, benar bahwa
ada harta karun di pulau itu.
Dari 2 kasus, disimpulkan bahwa terdapat harta karun di pulau tersebut walaupun tidak dapat
dipastikan bahwa orang yang menjawab pertanyaan itu berasal dari suku mana.
14. Jika 4! berarti 4.3.2.1=24. Tuliskanlah berapa banyak digit 0 setelah digit bukan 0 terakhir
yang ada di 1000!
Jawaban : “249”
Pembahasan :
Angka 0 di belakang didapat dari faktorial yang pada faktorisasinya terdapat angka 5, 25, 125,
dst. Banyaknya 0 adalah ⌊1000
5⌋ + ⌊
1000
25⌋ + ⌊
1000
125⌋ + ⌊
1000
625⌋ = 200 + 40 + 8 + 1 = 249
Berikut ini merupakan deskripsi untuk soal nomor 15-19
Pada suatu ketika terdapat 5 orang yang terdampar di sebuah pulau terpencil yaitu Eddie,
Jendy, Laura, Nadine, dan Rainal. Masing-masing dari mereka memiliki profesi yang
berbeda yaitu dokter gigi, tukang kebun, pilot, polisi, pramugari. Ada yang berasal dari
Australia, Indonesia, Jerman,Vietnam, dan Zimbabwe. Masing – masing memiliki binatang
peliharaan yang berbeda yaitu anjing, burung, kucing, monyet, dan ular. Olahraga favorit
mereka juga berbeda-beda, yaitu basket, renang, sepakbola, tenis, dan voli. Selain itu juga
diketahui fakta-fakta sebagai berikut :
1. Orang yang berasal dari Zimbabwe tidak suka berenang
2. Nadine dan Laura tidak suka monyet
3. Orang yang memelihara ular berprofesi sebagai polisi
4. Laura adalah seorang pramugari
5. Orang yang berasal dari Jerman berprofesi sebagai pilot dan memelihara kucing
6. Eddie suka sepakbola sedangkan Nadine menyukai tenis
7. Orang yang olahraga favoritnya adalah basket tidak suka memelihara burung
8. Orang yang memelihara burung berasal dari Australia
9. Nadine berasal dari Indonesia
10. Orang yang berprofesi sebagai polisi berasal dari Zimbabwe
15. Olahraga favorit dari orang yang memelihara monyet adalah …
Jawaban : sepakbola
Pembahasan :
Jika direpresentasikan dalam tabel, maka fakta-fakta tersebut bisa dibentuk sbb
Nama Nadine Eddie Laura
Pekerjaan Pilot pramugari Polisi
Negara Asal Indonesia Jerman Zimbabwe
Olahraga favorit Tenis sepakbola
Binatang peliharaan kucing ular
Dari tabel di atas, yang mungkin memelihara monyet adalah Nadine, Eddie, dan Laura. Sesuai
dengan pernyataan no.2 maka yang mungkin memelihara monyet adalah Eddie. Oleh karena
itu, olahraga favoritnya adalah sepakbola.
16. Jika orang yang berasal dari Vietnam berprofesi sebagai tukang kebun, maka yang berprofresi
sebagai dokter gigi berasal dari …
Jawaban : Indonesia
Pembahasan :
Berdasarkan pernyataan yang berasal dari Vietnam berprofesi sebagai tukang kebun, yang
mungkin berasal dari Vietnam hanyalah Eddie, sehingga yang berprofesi sebagai dokter gigi
adalah Nadine yang berasal dari Indonesia
17. Jika yang berprofesi sebagai dokter gigi memelihara anjing, maka yang memelihara burung
memiliki profesi sebagai…
Jawaban : pramugari
Pembahasan :
Dari fakta-fakta di atas, yang mungkin memelihara anjing hanyalah Nadine atau Laura.
Karena profesi Laura telah diketahui, maka yang memelihara anjing adalah Nadine. Oleh
karena itu, yang memelihara burung adalah Laura yang berprofresi sebagai pramugari
18. Olahraga favorit orang yang berasal dari Australia adalah …
Jawaban : renang
Pembahasan :
Dari pernyataan no.7 dapat disimpulkan bahwa Laura tidak suka bermain basket. Berarti
olahraga favorit Laura mungkin renang atau voli. Dari pernyataan no.1 dapat disimpulkan
bahwa orang yang suka berenang adalah Laura. Berdasarkan pernyataan no.8, maka yang
mungkin berasal dari Australia hanyalah Laura.
19. Jika pernyataan no.7 dihilangkan, maka hal-hal yang masih dapat disimpulkan adalah
I. Olahraga favorit orang yang berasal dari Vietnam kemungkinannya adalah basket atau
berenang
II. Rainal kemungkinan berprofesi sebagai pilot atau polisi
III. Orang yang memelihara ular suka berenang
IV. Jendy berasal dari Zimbabwe atau Jerman
(tuliskan jawaban anda di lembar jawaban hanya huruf pilihan yang bersangkutan).
A. Hanya I & III yang benar
B. Hanya II & IV yang benar
C. Hanya I & IV yang benar
D. Hanya II & III yang benar
E. Tidak ada kesimpulan yang benar
Jawaban : B
Pembahasan :
Orang yang berasal dari Vietnam olahraga favoritnya adalah sepakbolah, jadi tidak mungkin
suka basket ataupun berenang. Orang yang memelihara ular berasal dari Zimbabwem
sehingga tidak mungkin suka berenang. Oleh karena itu pernyataan yang benar hanyalah II
dan IV.
20. Sebuah slot machine memiliki tiga roda undi. Di setiap roda ada 4 simbol, yaitu A, B, C, dan
D. Setiap kali pengguna menarik tuas, ketiga roda undi akan berputar dan masing-masingnya
berhenti di suatu simbol tertentu. Pengguna akan menang jika ketiga simbol yang ditunjukkan
roda undi semuanya sama. Berapakah peluang pengguna untuk menang di slot machine ini?
Jawaban : “0.0625”
Pembahasan :
Total kemungkinan hasil: 4 * 4 * 4 = 64. Kemungkinan roda undi semuanya sama: 4 (AAA,
BBB, CCC, DDD). Peluang: 4/64 = 1/16.
21. Sebuah slot machine memiliki tiga roda undi. Di setiap roda ada 4 simbol, yaitu A, B, C, dan
D. Setiap kali pengguna menarik tuas, ketiga roda undi akan berputar dan masing-masingnya
berhenti di suatu simbol tertentu. Pengguna akan menang jika ketiga simbol yang ditunjukkan
roda undi semuanya sama. Namun, slot machine yang ini sudah agak tua. Jika slot machine
dipukul, maka roda undi yang berbeda sendiri bisa berubah menjadi sama dengan yang
lainnya, misalnya A-A-D, kemudian dipukul, bisa berubah menjadi A-A-A. Berapakah
peluang pengguna untuk memang di slot machine ini?
Jawaban : “0.625”
Pembahasan :
Total kemungkinan hasil: 4 * 4 * 4 = 64. Kemungkinan roda undi semuanya sama: 4 (AAA,
BBB, CCC, DDD). Kemungkinan salah satu yang berbeda: (AA[BCD], A[BCD]A,
[BCD]AA, BB[ACD], B[ACD]B, [ACD]BB, CC[ABD], C[ABD]C, [ABD]CC, DD[ABC],
D[ABC]D, [ABC]DD). Peluang: 40/64 = 5/8.
22. Jika a, b, c, d dan e adalah bilangan-bilangan cacah (0,1,2, ...) dan diketahui pula a*b*c*d*e
= 864, berapakah banyaknya kemungkinan nilai-nilai kelima bilangan tersebut dapat dibuat
jika a*b harus sama dengan 12 dan setiap bilangan boleh digunakan lebih dari satu kali?
(Tuliskan jawabannya dalam bentuk angka)
Jawaban : “360”
Pembahasan :
Untuk a*b = 12, a dan b ada 6 pasang kemungkinan ({1,12}, {2,6}, {3,4},{4,3}, {6,2},{12,1})
dan c*d*e = 72 ada 60 kemungkinan ({1,1,72},...,{72,1,1}), sehingga total kemungkinan ada
6*60 = 360
Berikut ini merupakan deskripsi untuk soal nomor 23-24
Pak Dengklek mengadakan sebuah kompetisi makan kerupuk seIndonesia. Pada kompetsisi
tersebut terdapat m medali dan kontes tersebut dilaksanakan selama n hari. Pada hari
pertama, 1 medali diberikan kemudian 1/7 dari sisa medali diberikan
Pada hari kedua, 2 medali diberikan kemudian 1/7 dari sisa medali diberikan
Demikian terus berlangsung hingga pada hari ke n, n medali diberikan pada peserta
23. Tentukan lamanya kompetisi tersebut dilaksanakan!
Jawaban : “6”
Pembahasan :
36 medali selama 6 hari
Hari 1 : 1+(35/7) medali diberikan, sisa medali 30
Hari 2 : 2+(28/7) medali diberikan, sisa medali 24
Hari 3 : 3+(21/7) medali diberikan, sisa medali 18
Hari 4 : 4+(14/7) medali diberikan, sisa medali 12
Hari 5 : 5+(7/7) medali diberikan, sisa medali 6
Hari 6 : 6 medali diberikan
24. Tentukan banyaknya medali pada awal kompetisi!
Jawaban : “36”
Pembahasan :
36 medali selama 6 hari
Hari 1 : 1+(35/7) medali diberikan, sisa medali 30
Hari 2 : 2+(28/7) medali diberikan, sisa medali 24
Hari 3 : 3+(21/7) medali diberikan, sisa medali 18
Hari 4 : 4+(14/7) medali diberikan, sisa medali 12
Hari 5 : 5+(7/7) medali diberikan, sisa medali 6
Hari 6 : 6 medali diberikan
25. Pada suatu sekolah, terdapat 8 orang siswa (1, 2, …, 8) dan lima buah mata pelajaran yang
dapat dipilih (A, B, C, D, E). Tabel berikut merepresentasikan hubungan antara siswa dan
mata pelajaran. Angka 1 pada elemen (i, j) berarti siswa i memilih mata pelajaran j, sedangkan
angka 0 menyatakan siswa i tidak memilih mata pelajaran j.
A B C D E
1 0 1 0 0 1
2 0 1 0 1 0
3 0 0 1 1 0
4 1 1 0 0 0
5 0 1 0 1 0
6 0 0 1 1 0
7 1 0 1 0 0
8 0 0 1 1 0
Jika pihak sekolah akan mengatur jadwal untuk ujian kelima mata pelajaran tersebut sehingga
semua siswa dapat mengikuti ujian mata pelajaran yang diambilnya tanpa bertabrakan
waktunya dengan jadwal ujian pelajaran lain yang juga diambilnya, berapa jumlah minimum
hari yang dibutuhkan untuk mengadakan ujian?
Jawaban : 2 hari
Pembahasan :
Dibuat graf dengan simpul sebagai mata pelajaran (A..E) dan sisi yang melambangkan bahwa
ada siswa yang mengambil kedua mata pelajaran tersebut.
Dari graf tersebut, dapat disimpulkan bahwa :
Ujian untuk mata pelajaran A, D, dan E dapat dilaksanakan bersamaan. Dan mata pelajaran
B dan C dapat dilaksanakan bersamaan. Sehingga, diperlukan minimal 2 hari untuk
mengadakan ujian untuk lima mata pelajaran tersebut.
26. Bilangan berikutnya dari deret ini adalah:
0, 1, 2, 4, 7, 12, 20, 33, 54, 88, …
Jawaban : “143”
Pembahasan :
Selisih antara 2 bilangan pada deret ini sesuai dengan deret Fibonacci, sehingga angka
berikutnya adalah 88+55=143.
Berikut ini merupakan deskripsi untuk soal nomor 27-28
Dalam sebuah pertandingan renang antar RW terdapat 8 orang peserta, mereka adalah A,B,C,D,E,F,G, dan H. Setelah pertandingan dilakukan secara tertutup, Pak Lurah yang
merupakan juri mengumumkan hasilnya secara unik. Ia tidak mengumumkan urutan
peringkat dari 1 sampai 8, makin kecil peringkat seseorang tentunya semakin baik
peringkatnya, tetapi hanya memberikan beberapa fakta mengenai pertandingan, yaitu
sebagai berikut:
a. E berada 3 peringkat dibawah B dan 4 peringkat diatas F
b. Peringkat A lebih baik dari D, dan peringkat D lebih baik dari H
c. Selisih peringkat A dan D sama dengan selisih peringkat D dan H
d. Peringkat G lebih baik dari peringkat C
27. Ada berapa konfigurasi urutan peringkat yang mungkin?
Jawaban : “2”
Pembahasan :
Ada 2 konfigurasi yang mungkin, yaitu B,G,C,E,A,D,H,F; atau B,G,A,E,D,C,H,F.
28. Jika diketahui peringkat C lebih baik dari E, tuliskanlah urutan peringkat dari 1-8!
Jawaban : B,G,C,E,A,D,H,F.
Pembahasan :
29. Sebuah nomor telepon 7 digit dengan format d1d2d3 – d4d5d6d7. Sebuah digit telepon
dikatakan mudah untuk dihafal jika d1d2d3 sama persis dengan d4d5d6 dan d5d6d7. Digit
yang valid di adalah anatara 0 hingga 9. Ada berapa banyak nomor telepon yang berbeda yang
memenuhi persyaratan mudah untuk dihafal?
Jawaban : “19990”
Pembahasan :
Misalkan:
A = {kumpulan nomor telepon yang d1d2d3 sama dengan d4d5d6}
B = {kumpulan nomor telepon yang d1d2d3 sama dengan d5d6d7}
Sebuah nomor telepon A∩B jika dan hanya jika d1 = d2 = d3 = d4 = d5 = d6 = d7.
n(AᴒB) = n(A) + n(B) - n(A∩B)
= 1000x10 + 1000x10 – 10
= 19990
Berikut ini merupakan deskripsi untuk soal nomor 30-31
Empat orang laki-laki - Andi, Budi, Charlie and Doni – sedang berdiri lurus.
Hanya satu orang yang tampan, pintar dan tidak penakut
Dua orang yang tidak pintar, dan mereka berdiri di sebelah Andi
Budi adalah satu-satunya orang yang berdiri di sebelahnya satu-satunya orang tampan
Charlie adalah satu-satunya orang yang tidak berdiri di sebelahnya satu-satunya orang
penakut
30. Siapa yang pintar, tampan dan tidak penakut?
Jawaban : Charlie
Pembahasan :
Kemungkinan posisi mereka adalah: CHARLIE-BUDI-ANDI-DONI. Yang pintar, tampan,
dan tidak penakut adalah Charlie
31. Siapa saja yang dipastikan penakut?
Jawaban : Andi
Pembahasan :
Hanya ada 1 penakut menurut soal, yaitu Andi
Berikut ini merupakan deskripsi untuk soal nomor 32-34
Sebuah perusahaan manajemen membuat suatu tim yang terdiri dari 3 orang sarjana teknik
dan 2 orang sarjana sosial. Perusahaan itu memiliki 4 orang sarjana teknik, yaitu A, B, C,
dan D, serta 3 orang sarjana sosial, yaitu X, Y, dan Z. Ada beberapa ketentuan dalam
menyusun tim tersebut:
- A dan Z terikat kontrak, jadi harus dipilih keduanya jika salah satu ada dalam tim.
- Jika C ada dalam tim, maka Z harus dipilih, tetapi jika Z dipilih maka C tidak harus
dipilih.
- A tidak bisa bekerja sama dengan C.
- D tidak bisa bekerja sama dengan Y.
32. Tuliskan semua orang yang pasti masuk di dalam tim!
Jawaban : A, B, D, X, Z
Pembahasan :
Jika A tidak masuk, maka Z tidak masuk. Sisa B, C, D tidak mungkin, maka pasti A dan Z
masuk. Karena A pasti masuk, C pasti tidak masuk. Karena C pasti tidak masuk, pasti B dan
D yang masuk. Karena D masuk, maka Y pasti tidak masuk, maka X yang masuk dalam tim.
33. Tuliskan semua orang yang pasti tidak masuk di dalam tim!
Jawaban : C,Y
Pembahasan :
Jika A tidak masuk, maka Z tidak masuk. Sisa B, C, D tidak mungkin, maka pasti A dan Z
masuk. Karena A pasti masuk, C pasti tidak masuk. Karena C pasti tidak masuk, pasti B dan
D yang masuk. Karena D masuk, maka Y pasti tidak masuk, maka X yang masuk dalam tim.
34. Tim diperbesar menjadi 3 orang sarjana teknik dan 3 orang sarjana sosial. Kemudian datang
seorang sarjana sosial baru, yaitu W. Berapakah kemungkinan susunan tim yang bisa dibentuk
sekarang?
Jawaban : “1”
Pembahasan :
Kombinasi yang mungkin hanya 1, jika 3 teknik dan 2 sosial. Banyak kombinasi yang
mungkin jika 3 teknik dan 3 sosial tetap hanya 1, karena yang mengisi sosial yang ketiga pasti
W (Y tidak mungkin).
35. Apabila Listi hanya dapat melakukan loncatan dengan panjang 7 atau 9, berikan salah satu
cara ia dapat mencapai titik 72. Berikan sebagai urutan loncatan yang harus ia lakukan.
Jawaban : 9 – 18 – 27 – 36 – 45 – 54 – 63 – 72
Pembahasan :
36. Apabila Listi hanya dapat melakukan loncatan dengan panjang 7 atau 9, ada berapa cara
berbeda yang dapat ia lakukan untuk mencapai titik 72?
Jawaban : 11
Pembahasan :
f(72) = f(65) + f(63) = 9 + 2 = 11
f(65) = f(58) + f(56) = 8 + 1 = 9
f(63) = f(56) + f(54) = 1 + 1 = 2
f(58) = f(51) + f(49) = 7 + 1 = 8
f(56) = f(49) + f(47) = 1 + 0 = 1
f(54) = f(47) + f(45) = 0 + 1 = 1
f(51) = f(44) + f(42) = 6 + 1 = 7
f(49) = f(42) + f(40) = 1 + 0 = 1
f(47) = f(40) + f(38) = 0 + 0 = 0
f(45) = f(38) + f(36) = 0 + 1 = 1
f(44) = f(37) + f(35) = 5 + 1 = 6
f(42) = f(35) + f(33) = 1 + 0 = 1
f(40) = f(33) + f(31) = 0 + 0 = 0
f(38) = f(31) + f(29) = 0 + 0 = 0
f(36) = f(29) + f(27) = 0 + 1 = 1
f(37) = f(30) + f(28) = 4 + 1 = 5
f(35) = f(28) + f(26) = 1 + 0 = 1
f(33) = f(26) + f(24) = 0 + 0 = 0
f(31) = f(24) + f(22) = 0 + 0 = 0
f(29) = f(22) + f(20) = 0 + 0 = 0
f(27) = f(20) + f(18) = 0 + 1 = 1
f(30) = f(23) + f(21) = 3 + 1 = 4
f(28) = f(21) + f(19) = 1 + 0 = 1
f(26) = f(19) + f(17) = 0 + 0 = 0
f(24) = f(17) + f(15) = 0 + 0 = 0
f(22) = f(15) + f(13) = 0 + 0 = 0
f(20) = f(13) + f(11) = 0 + 0 = 0
f(18) = f(11) + f(9) = 0 + 1 = 1
f(23) = f(16) + f(14) = 2 + 1 = 3
f(21) = f(14) + f(12) = 1 + 0 = 1
f(19) = 0
f(17) = 0
f(15) = 0
f(13) = 0
f(11) = 0
37. Apabila Listi dapat melakukan loncatan dengan panjang 1 atau 2 saja, ada berapa cara berbeda
yang dapat ia lakukan untuk mencapai titik 12?
Jawaban : 233
Pembahasan : ini tinggal Fibonacci aja
f(0) = 1
f(1) = 1
f(2) = 2
f(3) = 3
f(4) = 5
f(5) = 8
f(6) = 13
f(7) = 21
f(8) = 34
f(9) = 55
f(10) = 89
f(11) = 144
f(12) = 233
38. Apabila Listi hanya dapat melakukan loncatan dengan panjang angka pangkat 1, 2, 4, 8, 16,
32, dan 64, berikan salah satu cara untuk mencapai titik 100 yang menggunakan jumlah
loncatan sesedikit mungkin.
Jawaban : 64 – 96 – 100
Pembahasan : pake greedy
64 + 32 + 4
39. Tentukan jumlah cara berbeda untuk mencapai titik 21 apabila Listi dapat melakukan loncatan
dengan panjang integer positif berapa pun juga.
Jawaban : 221 = 2 * 1024 * 1024 = 2097152
Pembahasan :
f(0) = 1
f(x) = f(x-1) + f(x-2) + … + f(0) = 2x-1, x > 0
40. 1,1,2,3,4,6,6,9,12,10,16,20,15,25,30,21,36,42,28,49,.. Tuliskan bilangan yang merupakan
suku berikutnya dari barisan ini.
Jawaban : “56”
Pembahasan :
Barisan ini terdiri dari 3 barisan yaitu
1,3,6,10,15,21,28,… (barisan segitiga);
1,4,9,16,25,36,… (barisan segiempat); dan
2,6,12,20,30,42,.. (2*1,3*2,4*3,…).
Maka bilangan yang merupakan suku berikutnya adalah 8*7=56
41. Bilangan berikutnya dari deret ini adalah:
0, 2, 4, 7, 12, 23, 42, …
Jawaban : “83”
Pembahasan :
Beda Xi dengan Xi+1 adalah bilangan prima ke-‘fibonacci(i)’, dengan f(1)=f(2)=1. Maka
bilangan berikutnya adalah 42+(bilangan prima ke f(7))=42+41=83.
42. (15 𝑚𝑜𝑑 11) + (25 𝑚𝑜𝑑 11) + (35 𝑚𝑜𝑑11) + ⋯ + (335 𝑚𝑜𝑑 11) =…
Jawaban : “165”
Pembahasan :
Bilangan-bilangan asli jika dipangkat5kan lalu dimod 11 hasilnya akan menunjukkan pola
berikut
1, 10, 1, 1, 1, 10, 10, 10, 1, 10, 0, 1, 10, 1, 1, 1, 10, 10, 10, 1, 0, dst. sehingga hasilnya adalah
55*3=165.
43. Diberikan sebuah segitiga sama sisi dengan panjang sisi R. Segitiga tersebut memiliki 3 titik
sudut (You don’t say? wkwkwk). Misalkan setiap titik sudut merupakan pusat dari
lingkarang dengan jari-jari R. Berapakah luas interseksi dari ketiga lingkaran yang terbentuk?
Jawaban boleh pecahan maupun bilangan. Konstanta PI dan akar boleh tidak dievaluasi. Jawaban : (pi – setengah akar tiga) kali R kuadrat
Pembahasan :
44. Diberikan sebuah poligon dengan 1000 sisi (oleh karenanya, poligon tersebut memiliki tepat
1000 titik). Setiap sisi memiliki panjang yang sama, dan setiap sudut dari poligon tersebut
memiliki ukuran yang sama. Diketahui bahwa panjang maximal dari sebuah segmen garis
yang dibentuk dengan memilih tepat 2 titik dari poligon tersebut ialah 20. Berapakah luas
poligon tersebut? Jawaban harus dievaluasi dan dibulatkan ke atas atau ke bawah (kedua
jawaban akan dianggap benar).
Jawaban : 314
Pembahasan :
45. Terdapat 100 titik, dinomori 1 sampai 100. Jarak antara dua titik adalah selisih dari kedua
bilangan titik tersebut. Titik X bersebelahan dengan titik Y apabila jarak mereka ialah 1.
Jawaban :
Pembahasan :
Berikut ini merupakan deskripsi untuk soal nomor 46-49
Setiap Gogo, Siti, Lisa, Rosid, dan Vina berada di salah satu titik. Kita akan
mengidentifikasi lokasi mereka dengan informasi-informasi sebagai berikut:
a) Kelima anak tersebut berada di titik yang berbeda-beda
b) Jarak antara Rosid ke Vina lebih kecil daripada jarak antara Gogo ke Vina
c) Gogo berada di titik 3.
d) Tidak terdapat orang di semua titik yang bersebelahan dengan Vina.
e) Jumlah dari jarak antara Siti dengan keempat orang lainnya ialah 32.
f) Rosid berada di titik bernomor prima
g) Lisa berjarak 10 dari Gogo.
h) Jarak Lisa ke Rosid prima
i) Jarak Vina dan Gogo tidak lebih dari 12.
j) Tidak ada orang yang berada di titik 2.
Titik 2 kosong (clue j)
Gogo berada di titik 3 (clue c)
Lisa ada di titik 13 (clue g)
Posisi Rosid : 11 (clue a, c, f, g, h, i)
V-3 > 11-V atau V > 11
2V > 14
V > 7
Posisi Vina yang mungkin : 8, 9, 15 (clue a, b, c, d, f, g, h, i)
Posisi Siti yang mungkin : 1, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 17, 18, 19, 20, …
Tapi dengan clue e :
Posisi Vina yang mungkin : 9, 15
lalu
Posisi Siti yang mungkin : 1, 17
sehingga
Posisi Vina yang mungkin : 9
46. Sebutkan semua titik yang mungkin merupakan lokasi Lisa.
Jawaban : 13
Pembahasan :
47. Sebutkan semua titik yang mungkin merupakan lokasi Rosid.
Jawaban : 11
Pembahasan :
48. Sebutkan semua titik yang mungkin merupakan lokasi Vina.
Jawaban : 9
Pembahasan :
49. Sebutkan semua titik yang mungkin merupakan lokasi Siti.
Jawaban : 1 dan 17
Pembahasan :
BAGIAN B: ALGORITMIK
Potongan program berikut ini merupakan pseudocode untuk soal nomor 1-2
procedure Z (a1, a2, … an : integer; x : integer; idx : integer);
var
i,j,mid : integer;
ketemu : boolean;
begin
i := 1;
j :=n;
ketemu := false;
while ((not ketemu) and (i<= j)) do
begin
mid := (i+j) div 2;
if (amid = x) then
ketemu := true;
else
if (amid < x) then
i := mid +1;
else
j := mid -1;
end;
if (ketemu) then
idx := mid;
else
idx := 0;
end;
50. Apakah yang dilakukan oleh algoritma pada Procedure Z diatas?
Jawaban :
Pembahasan :
Procedure Z adalah algoritma untuk melakukan pencarian (dengan metode Binary Search)
51. Mengacu pada potongan algoritma di pertanyaan no 1, jika a1,a2,… an tidak ada yang bernilai
sama dengan x, berapa kalikah operasi perbandingan dilakukan?
A. n
B. 2 log n
C. n2
D. n log n
E. Tidak ada pilihan yang sesuai
(tuliskan jawaban anda di lembar jawaban hanya huruf pilihan yang bersangkutan).
Jawaban : B
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 3-5
//inisiasi semua T[..] sebagai true
for i := 2 to max do
begin
if (T[i]) then
begin
writeln(i);
j := i;
while (j*i <= n) do
begin
… //perintah yang hilang
j := j + 1;
end;
end;
end;
52. Algoritma tersebut bertujuan untuk mencetak 2,3,5,7,… seterusnya hingga nilai max
Agar algoritma bekerja sesuai dengan yang diharapkan, perintah apa yang harus dituliskan di
bagian “… //perintah yang hilang?” (hint : perintah hanya terdiri dari 1 baris).
Jawaban : T[i*j] := false;
Pembahasan :
53. Mengacu pada potongan algoritma di atas. Bila max bernilai 100, berapa kali perintah
writeln(i) dieksekusi?
Jawaban : “25”
Pembahasan :
54. Mengacu pada potongan algoritma di atas. Bila max bernilai 100, apa saja yang ditampilkan
saat perintah writeln(i) dieksekusi?
Jawaban : 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 6-8
var
x : array[1..1000] of boolean;
i,j : integer;
p,q : integer;
begin
for i := 1 to 1000 do x[i] := TRUE;
for i := 2 to 1000 do
begin
if x[i] then
begin
j := i + i;
while (j <= 1000) do
begin
x[j] := FALSE;
j := j + i;
end;
end;
end;
readln(p,q);
for i := p to q do if x[i] then write(i,',');
end.
55. Jika pada program pengguna memasukkan nilai p = 10 dan q = 20, Berapa jumlah dari angka-
angka yang dikeluarkan oleh program?
Jawaban : “60”
Pembahasan :
Program melakukan sedemikian rupa sehingga x[1 dan bilangan-bilangan prima] berisi
TRUE, dan lainnya FALSE. Pada bagian terakhir, program mencetak semua x[p..q] yang
isinya TRUE.
Jadi,jumlah angka yang dikeluarkan adalah 11 + 13 + 17 + 19 = 60
56. Jika pada program pengguna memasukkan nilai p = 5 dan q = 40, Berapa banyak angka yang
dikeluarkan oleh program?
Jawaban : “10”
Pembahasan :
Ada 10 bilangan: 5, 7, 11, 13, 17, 19, 23, 29, 31, 37
57. Jika pada program pengguna memasukkan nilai p = 1, berapakah nilai q minimum agar
dihasilkan tepat 10 buah angka dari program?
Jawaban : “23”
Pembahasan :
q = 23 (1, 2, 3, 5, 7, 11, 13, 17, 19, 23)
58. Perhatikan potongan program berikut ini
program soalA;
var m,i,a,b,c,d:longint;
begin
readln(m);
a:=1;b:=1;c:=1;
for i:=4 to m do begin
d:=a+b+c;
a:=b;
b:=c;
c:=d;
end;
writeln(c);
end.
Bila user memasukkan input 8, maka berapakah outputnya?
Jawaban : “31”
Pembahasan : Simulasikan
Potongan program berikut ini merupakan pseudocode untuk soal nomor 10-11
function campur(n : integer) : integer;
begin
campur := n * n;
end;
function aduk(x,y,z : integer) : integer;
begin
if (y = 0) then
aduk := 1
else if (y mod 2 = 0) then
aduk := campur(aduk(x,y div 2,z)) mod z
else
aduk := ( (x mod z) * aduk(x,y-1,z) ) mod z;
end;
var
a,b,c : integer;
begin
readln(a,b,c);
writeln(aduk(a,b,c));
end.
59. Jika program dijalankan dan pengguna memasukkan angka 2, 10, dan 10, berapakah angka
yang dikeluarkan program?
Jawaban : “4”
Pembahasan :
Program mencetak hasil dari a^b mod c
2^10 = 1024, 1024 mod 10 = 4
60. Jika program dijalankan dan pengguna memasukkan angka 4, 40, dan 5, berapakah angka
yang dikeluarkan program?
Jawaban : “1”
Pembahasan :
Program mencetak hasil dari a^b mod c
4^40 = berakhiran 6 (4^genap berujung 6), 6 mod 5 = 1
Potongan program berikut ini merupakan pseudocode untuk soal nomor 12-14
for i:=1 to n-1 do
for j:=i+1 to n do
… // perintah yang hilang
begin
swap(a,b);
end;
61. Jika kita bermaksud untuk membuat potongan program yang melakukan pengurutan
gelembung pada sebuah larik bilangan yang bernama DATA secara menaik, maka perintah
apakah yang harus dituliskan di bagian “… //perintah yang hilang”?
Jawaban : If DATA[i]>DATA[j] then
Pembahasan :
62. Tuliskanlah perintah–perintah penukaran nilai a dan b pada prosedur swap(a,b) dengan
menggunakan 1 variabel pembantu bernama ‘temp’!
Jawaban : temp:=A;
A:=B;
B:=temp;
Pembahasan :
63. Jika untuk N=1000 dibutuhkan 1 detik untuk mengeksekusi program diatas, dan program
berjalan konstan untuk berapapun N, maka jika N=10.000, waktu yang dibutuhkan adalah?
Jawaban : “100”
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 15-17
function g(a,b : integer) : integer;
begin
if (b = 0) then
g := // kosong
else
g := // kosong
end;
function l(a,b : integer) : integer;
begin
l := // kosong
end;
Fungsi g diharapkan akan menghasilkan Faktor Persekutuan Terbesar (FPB) dari dua buah
nilai integer a dan b, sedangkan fungsi l diharapkan akan menghasilkan Kelipatan Persekutuan
Terkecil (KPK) dari dua buah nilai integer a dan b.
64. Isilah bagian kosong di baris 4 dengan tepat.
Jawaban : g := a
Pembahasan :
65. Isilah bagian kosong di baris 6 dengan tepat.
Jawaban : g := g(b,a mod b);
Pembahasan :
66. Isilah bagian kosong di baris 11 dengan tepat.
Jawaban : l := (a * b) div g(a,b);
Pembahasan :
67. Perhatikan potongan program berikut ini
// Kode 1
for p := 1 to n do
for q := 1 to p do
for r := 1 to n do
writeln('GO GET GOLD!');
// Kode 2
for s := 1 to ___ do writeln('GO GET GOLD!');
Agar Kode 1 dan Kode 2 menghasilkan banyak tulisan ‘GO GET GOLD!’ yang sama, tuliskan
bagian kosong pada Kode 2 dengan ekspresi yang sesuai.
Jawaban :
Pembahasan :
68. Perhatikan potongan program berikut ini
// Kode 3
t := n;
while (t > 0) do
begin
for i := 1 to n do writeln('GO GET GOLD!');
t := t div 2;
end;
Jika dipilih nilai n dengan suatu angka yang cukup besar, maka apakah fungsi yang
proporsional dengan pertumbuhan banyaknya tulisan ‘GO GET GOLD!’ yang dihasilkan?
A. sqrt(N)
B. sqr(N)
C. log N
D. N Log N
E. N^2
F. N^3
(tuliskan jawaban anda di lembar jawaban hanya huruf pilihan yang bersangkutan).
Jawaban :
Pembahasan :
69. Perhatikan potongan program berikut ini
function an(n:longint):longint;
begin
if(n<4)then
an:=1
else
TITIK-TITIK
end;
Perintah apakah yang harus diisikan pada TITIK-TITIK agar output fungsi tersebut sama
seperti output program soal 2!
Jawaban : an:=an(n-1) + an(n-2) + an(n-3)
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 20-21
var
i,j:longint;
begin
for j:=1 to 15 do
for i:=1 to 16-j do
if (i mod j=0) then writeln(‘*’);
end.
70. Jika program diatas dijalankan, maka banyaknya bintang yang akan ditampilkan ke layar
adalah?
Jawaban : “34”
Pembahasan :
71. Jika ’16-j’ diubah menjadi 16, maka banyaknya bintang yang akan ditampilkan ke layar
adalah?
Jawaban : “49”
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 23-26
a:=2;
b:=3;
for i:=p to q do
begin
b:=i*(a+b);
end;
72. Apabila rumus pada baris ke-5 program di atas diubah menjadi b:=a*(a+b) dan nilai b setelah
program dijalankan adalah 108, maka berapa nilai q-p?
Jawaban : “3”
Pembahasan :
Menghitung nilai q-p sama dengan menghitung jumlah pengulangan yang terjadi dikurangi
Perubahan nilai b dapat diamati dari tabel berikut
Perulangan Perhitungan Nilai b
0 3
1 2*(2+3) 10
2 2*(2+10) 24
3 2*(2+24) 52
4 2*(2+52) 108
Karena nilai b diperoleh pada perulangan ke-4, maka dapat dipastikan nilai q-p = 3
73. Apabila diketahui p=3 dan nilai b setelah program dijalankan adalah 350, maka berapa nilai
q pada saat inisialisasi?
Jawaban : “5”
Pembahasan :
Perhitungan dari potongan kode di atas dapat dituliskan sebagai berikut
Nilai i Perhitungan Nilai b
3 3*(2+3) 15
4 4*(2+15) 68
5 5*(2+68) 350
Karena nilai b=350 pada saat i bernilai 5, maka q=5
74. Apabila diberi inisialisasi awal a=8, p=3,q=7, berapakah nilai b sebelum program dijalankan
agar nilai b setelah program dijalankan menjadi 44072?
Jawaban : “6”
Pembahasan :
Perhitungan dari potongan kode di atas dapat dituliskan sebagai berikut
Nilai i Perhitungan Nilai b
3 3*(8+ba) 24 + (3*ba)
4 4*(8+(24+(3*ba)))) 128 + (12*ba)
5 5*(8+(128 + (12*ba))) 680 + (60*ba)
6 6 *(8+(680 + (60*ba))) 4128 + (360*ba)
7 7*(8+(4128 + (360*ba)))) 28952 + (2520*ba)
Jika diketahui ba merupakan nilai b sebelum program dijalankan, dan diketahui nilai b setelah
program dijalankan = 44072, maka 28952 + (2520*ba ) = 44072, sehingga ba = 6
75. Apabila nilai b dan p sebelum program dijalankan secara berturut-turut adalah 5 dan 2, dan
diketahui pada saat i=5, nilai b = 1420, pada saat i=8, nilai b= 478720, berapakah nilai a?
Jawaban : “4”
Pembahasan :
Perhitungan dari potongan kode di atas dapat dituliskan sebagai berikut
Nilai i Perhitungan Nilai b
2 2*(a+5) (2*a)+10
3 3*(a+ (2*a)+10) (9*a)+30
4 4*(a+(9*a)+30) (40*a)+120
5 5*(a+(40*a)+120) (205*a)+600
6 6*(a+(205*a)+600) (1236*a)+3600
7 7*(a+(1236*a)+3600) (8659*a)+25200
8 8*(a+(8659*a)+25200) (69280*a)+201600
Dari soal diketahui bahwa (205*a)+600=1420 dan (69280*a)+201600 = 478720. Dari kedua
persamaan tersebut diperoleh bahwa nilai a=4
Potongan program berikut ini merupakan pseudocode untuk soal nomor 27-29
var
tab: array [1..200,1..200]of integer;
tab2: array [1..200,1..200]of boolean;
i,j,k,n,m:integer;
procedure adaapa(x,y,z:integer);
begin
if ((x<=m) and (x>=1) and (y<=n) and (y>=1) and not(tab2[x,y]))
then
begin
k:=k+1;
tab[x,y] := z;
tab2[x,y] := true;
adaapa(x-1,y,z+1);
adaapa(x+1,y,z+1);
adaapa(x,y-1,z+1);
adaapa(x,y+1,z+1);
end;
end;
begin
for i:=1 to 200 do
for j:=1 to 200 do
tab2[i,j] := false;
k:=17;
n:=15;
m:=8;
adaapa(1,1,0);
writeln(k);
end.
76. Berapakah nilai yang tercetak pada akhir program?
Jawaban : “137”
Pembahasan :
77. Agar output program tersebut menjadi 834, maka baris n:=15 harus diganti dengan n:=a.
Tentukan nilai a yang sesuai!
Jawaban : “117”
Pembahasan :
78. Apabila writeln(k) pada akhir program diganti dengan writeln(tab[4,3]), maka berapa nilai
yang tercetak?
Jawaban : “19”
Pembahasan :
Potongan program berikut ini merupakan pseudocode untuk soal nomor 30-31
function xxx(x:longint):longint;
begin
xxx:=x*x;
end;
function xyz(x,y:longint):longint;
begin
if(y = 1)then
xyz:=x
else if ((y mod 2) = 0) then
xyz:=xxx(xyz(x, y div 2))
else
xyz:=x*xyz(x,y-1);
end;
79. Untuk pemanggilan xyz(2,13) akan menghasilkan nilai berapa?
Jawaban : “8192”
Pembahasan :
80. Tentukan kompleksitas dari fungsi xyz tersebut dengan x adalah sembarang nilai dan y
adalah n!
A. O(1)
B. O(log n)
C. O(n)
D. O(n log n)
E. O(n2)
F. O(n2 log n)
G. O(n!)
H. O(nn)
(tuliskan jawaban anda di lembar jawaban hanya huruf pilihan yang bersangkutan).
Jawaban : B
Pembahasan
81. Perhatikan potongan pseudocode berikut ini procedure func(x: array[1..100] of integer);
for i := 1 to 100 do
swap(x[i], x[101 - i]);
Apabila kita memanggil func(y), jelaskan apa yang terjadi dengan y!
Jawaban : nilai y sebelum pemanggilan func(y) sama dengan nilai y setelah pemanggilan
func(y)
Pembahasan :
Waktu i =1, swap (x[1], x[100])
..
Waktu i =50, swap (x[50], x[51])
Waktu i =51, swap (x[51], x[50])
..
Waktu i =100, swap (x[100], x[1])
Potongan program berikut ini merupakan pseudocode untuk soal nomor 33-37
function func(x:integer):integer;
var
i : integer;
b : boolean;
begin
b:= true;
i := 1;
while b=true do
begin
if (x mod i) <> 0 then
begin
func := i;
b:=false;
end;
inc(i);
end;
end;
82. Tentukan nilai dari func(4620)!
Jawaban : 8
Pembahasan :
Pengulangan tersebut berhenti saat i-1 tidak habis membagi x
4620 = 42 * 110 = 2*2*3*5*7*11
habis jika dibagi 1, 2, 3, 4, 5, 6, 7, 10, ….
Nilai kembaliannya adalah i-1, yaitu 8
83. Tentukan nilai x positif terkecil di mana func(x) = 11!
Jawaban : 2520
Pembahasan :
Agar kembaliannya 11, x harus habis dibagi 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 dan tidak habis
dibagi 11. KPK(2, 3, 4, 5, 6, 7, 8, 9, 10) = KPK( 5, 7, 8, 9) = 5*7*8*9 = 2520.
84. Tentukan lima nilai x positif terkecil di mana func(x) = 11!
Jawaban : 2520, 5040, 7560, 10080, 12600
Pembahasan :
Agar kembaliannya 11, x harus habis dibagi 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 dan tidak habis
dibagi 11. KPK(2, 3, 4, 5, 6, 7, 8, 9, 10) = KPK( 5, 7, 8, 9) = 5*7*8*9 = 2520. 5 bilangan
positif terkecil : 2520, 2520*2, 2520*3, 2520*4, 2520*5
85. Tentukan bilangan x positif terkecil ke-11 di mana func(x) = 11!
Jawaban : 30240
Pembahasan :
Yang jelas bukan 11*2520, karena func(11*2520) pasti bukan 11. Jadi seharusnya
12*2520.
86. Berikan sepuluh nilai x positif terkecil di mana tidak ada angka positif y sehingga func(y) =
x!
Jawaban : 1, 6, 12, 14, 15, 18, 20, 21, 22, 24
Pembahasan :
Semua bilangan pasti habis dibagi 1, jadi tidak mungkin f(y)=1. Lalu jika x bilangan
komposit dan bukan kuadrat sempurna, tidak mungkin juga f(y) = x karena jika
pengulangan sampai ke x, pasti semua bilangan yang kurang dari x habis membagi y.
Artinya, semua faktor x habis membagi y, demikian juga x. jadi 10 nilai positif terkecil :
1, 6, 12, 14, 15, 18, 20, 21, 22, 24.