1.

Seorang pedagang barang elektronik menjual sebuah televisi berwarna layar datar seharga Rp.3.000.000, jika tarif pajak barang elektronik yang tergolong barang mewah tersebut adalah antara 5 % sampai 8 %, maka harga yang paling mungkin untuk televisi tersebut setelah ditambah pajak adalah : (A) Rp. 3.180.000 (B) Rp. 3.100.000 (C) Rp. 3.120.000 (D) Rp. 3.140.000 (E) Rp. 3.250.000 Pembahasan X = Rp 3.000.000 Tarif Pajak = 5% - 8% Harga televisi + pajak 5% = 3.150.000 6% = 3.180.000 7% = 3.210.000 8% = 3.240.000

2. Deklarasi prosedur manakah yang tidak dibenarkan? a. procedure hapus; b. procedure hapus(s:string); c. procedure hapus(var s:string); d. procedure hapus(s:string):boolean; e. procedure hapus(var data); Pembahasan: Untuk penulisan prosedur, tidak diperbolehkan adanya nilai kembali. Sedangkan parameter tanpa tipe data (pada opsi e), dapat dibenarkan. 5. Tipe variabel ekspresi manakah yang tidak dapat ditampilkan dengan procedure Writeln? a. Type T=Integer; b. Type T=String; c. Type C=Char; d. Type T=(Small, Medium, Large) e. Semua valid Pembahasan: Opsi d adalah tipe data enumerasi. Tipe data enumerasi tidak dapat ditampilkan dengan perintah Writeln. 3. Perhatikan program berikut : var s:string; begin s:='TOKI GO GET GOLD!'; delete(s,1,length(s)-12);

k:=trunc(sqrt(i))+1. GET GOLD! d. Function length: Deklarasi : Function Length (S : String) : Integer. Apa keluaran program di atas ? a.writeln(s). yaitu 17-12 = 5. Statement delete(s. 3 b. writeln(k). Keterangan : menghasilkan akar pangkat dua dari x. begin i:=5. Keterangan : Length menghasilkan panjang dari S. GO GET GOLD! c. dimulai dari posisi Index. Count:Integer). Perhatikan penggalan program berikut : var i.k: integer.1. program tidak dapat dijalankan Pembahasan: Fungsi sqrt : Deklarasi : Function Sqrt (X : Real) : Real. 0 e.length(s)-12) akan menghapus s dari posisi 1 sebanyak panjang s. k:=0. Index: Integer. Apa keluaran program di atas ? a. Sqrt(5) akan menghasilkan 2. 2 d. Sehingga yang dihapus adalah karakter ‘TOKI ‘ dan s akan bernilai GO GET GOLD! 4. TOKI GO GET e. Jika S tidak berisi apa-apa maka akan menghasilkan 0. end. Keterangan : menghasilkan bilangan bulat dari X. Keterangan : procedure delete akan menghapus S sebanyak count karakter.24 c. 2. GO GET GOLD! b. TOKI GO GE Pembahasan: Procedure delete: Deklarasi : procedure Delete(var S: String. end. bernilai antara 0 sampai dengan 255. akan selalu lebih kecil atau sama dengan X. di mana x harus positif Fungsi trunc: Deklarasi : Function Trunc (X : Real) : Longint.23 .

maka akan menghasilkan 0. Selisih antara n dan p pasti ganjil sehingga jika ditambah 1 menjadi genap. a.B:string. end. Jika tidak ditemukan. akan menghasilkan 3 5.Trunc(2. (p – n)(n – p) Pembahasan . A bukan.. dan n + p berharga ganjil. C:string[10]. Tidak dapat dipastikan d. karena (n+p) adalah ganjil maka dari n dan p salah satu ganjil dan yang lain genap. np c. Mengacu pada program berikut : var A. Keterangan : function pos akan menghasilkan urutan atau posisi substr di S. . manakah dari berikut ini bil ganjil? a. Deklarasi : Function Pos (Substr : String.. if (Pos(B)>0) then Begin Writeln('A'). n – p + 1 b. Huruf ‘A’ tercetak b. Pada program function pos hanya terdiri dari 1 parameter saja sehingga program tidak akan dapat dijalankan. end else Writeln('B'). Tidak bisa di compile Pembahasan: Kesalahan pertama yang akan ditemui program adalah pada function pos. 3p + 5n e.23) akan menghasilkan 2 Sehingga k:=trunc(sqrt(i))+1. 6. Terjadi error e. Huruf ‘B’ tercetak c. n2 + p2 – 1 d. Jika n dan p adalah dua bilangan bulat. begin A:='TOKI MEMANG'. B:='HEBAT'. Apa yang terjadi jika program di atas di jalankan. S : String) : Integer. C:=A+B.

salah seorangnya B. G. C. duduk berseberangan dgn H. Apa keluaran program di atas ? a. dan J. Keterangan : membulatkan bilangan X. end. B. Masing-masing delegasi berada pada sisi-sisi memanjang berlainan (satu negara pada sisi yang sama dan ketua duduk di tengah delegasinya). · Para atase militer W.B bukan karena perkalian antara suatu bilangan genap dengan bilangan apapun akan menjadi genap. H. 3 e. · Baik D maupun F bukan ketua.7))). C bukan karena pangkat bulat positif berapapun dari bilangan genap. tetap genap. Delegasi W beranggotakan A. 7. dan ganjil tetap ganjil. karena perkalian antara dua bilangan ganjil menghasilkan bilangan ganjil. 2 d. Frac(3. . Batasan dalam mengatur urutan duduk mereka: · Delegasi W menempatkan A dan B di kedua ujung barisannya. 4 Pembahasan: Fungsi frac (lihat pembahasan di atas) Fungsi round Deklarasi : Function Round (X : Real) : Longint. D. Masing-masing delegasi terdiri atas seorang ketua. I. yang mungkin lebih besar atau lebih kecil dari X.dan tidak ada satupun yang berseberangan dengan atase militer R · G bukan atase militer.7) akan menghasilkan 0.7) akan menghasilkan 1 8. dan E. kemudian ganjil ditambah genap dan dikurang ganjil menjadi genap.1 c. Delegasi R beranggotakan F. · Kuping kanan G tuli shg ia harus paling kanan dari delegasi R. Delegasi-delegasi dari negara W dan negara R duduk berhadap-hadapan pada meja perundingan. Perhatikan potongan program berikut : begin writeln(round(frac(3. D bukan karena pangkat bulat positif berapapun dari bilangan ganjil tetap bilangan ganjil. didudukkan berdampingan. E benar. dan jumlah dua bilangan ganjil menjadi genap. 0 b. · C wakil dari kamar dagang. dua atase militer dan dua wakil kamar dagang negara masing-masing.7 Round(0.

Wakil kamar dagang yang duduk di sebelah H c. Jadi tinggal pilihan (A) yang paling mungkin. Jika atase militer maka (D) dan (E) salah karena sebelah y1 adalah H. Wakil kamar dagang yang duduk di sebelah I b.x5} adalah {A. Wakil kamar dagang yang duduk berseberangan dengan B d. Atase militer yang duduk di sebelah J Pembahasan Dibuat diagram sbb x1–x2–x3–x4–x5 negara W y1–y2–y3–y4–y5 negara R Dari (1) kemungkinan {x1. function f(n: int) begin if n=0 then f:=0 else f := n + f(n-1). (note: program ini merupakan Pascal-like pseudocode. Atase militer yang duduk di sebelah I e.m dan B adalah a. 9. (Note: ini bukan satu-satunya kemungkinan.m) menyebabkan x5=B. sehingga (atase militer dengan bold) A –x2–x3–x4– B y1–y2–y3–y4–G Dari pernyataan (6) dan (4) diperoleh C = x2 dan y2 = H. secara sintaks belum tentu sama dengan Pascal). Jika wakil kamar dagang maka (B) salah karena H atase militer dan (C) salah karena B ada di depan G.Manakah yang paling mungkin mengenai F berikut? a. end. sehingga A –C –x3–x4– B y1–H –y3–y4–G Dari pernyataan (3) dan diagram di atas D = x4 dan F = y1 atau y4 A –C –E –D –B y1–H –y3–y4– G Jadi tinggal 2 kemungkinan F=y1 (atase militer).A} Dari (2) maka y5=G yang karena pernyataan (4) dan (5) (G bukan a.B} atau {B. atau F=y4 (wakil kamar dagang).Kemungkinan lainnya masih ada tapi tidak ada di kelima pilihan itu). Diberikan penggalan program sebagai berikut. Berapakah nilai f(5) ? (A) 125 (B) 0 .

secara awam artinya adalah bila nilai n = 0. B mengatakan “Golongan kami berbeda?” Hal ini mengandung arti bahwa golongan A dan B adalah sama. maka nilai f = n + f (n-1) Berapa nilai f(5)…? Perhitungan : f(5). Jawaban soal nomor 10: Perhatikan deskripsi pertanyaan di atas! A mengatakan bahwa B adalah seorang ksatria (kalau hal ini benar. Dengan demikian. Golongan apakah yang tepat untuk A dan B jika A berkata “B adalah seorang ksatria” dan B berkata “Golongan kami berbeda”? (A) A adalah seorang ksatria dan B adalah seorang penipu. yang berarti bila nilai n ≠ 0. tetapi kalau ini tidak benar. jawaban yang benar adalah (D) 15 10. dan yang lain adalah penipu yang selalu berbohong. Jika Anda bertemu dengan dua orang A dan B. (C) Keduanya adalah ksatria. Inti soal di atas adalah sebagai berikut : if n=0 then f:=0 . jawabannya adalah (E) Keduanya adalah penipu. (E) Keduanya adalah penipu. . Di sebuah pulau terdapat dua golongan penduduk. kita lihat pernyataan yang disampaikan oleh B. ksatria yang selalu bicara jujur. Untuk memastikannya. berarti A dan B adalah penipu karena A sudah berbohong dengan mengatakan bahwa B adalah seorang ksatria padahal sebenarnya B adalah penipu). berarti A juga seorang ksatria (jujur). maka f = 5 + f(4) = 5 + (4 + f(3)) = 5 + 4 + (3 + f(2)) = 5 + 4 + 3 + (2 + f(1)) = 5 + 4 + 3 + 2 + 1 + 0 = 15 Dengan demikian. (D) Terkadang A dan B dapat berganti golongan. dimana n = 5. (B) A adalah seorang penipu dan B adalah seorang ksatria. yaitu mereka berdua adalah penipu. maka nilai f = 0 else f:= n + f (n-1) .(C) 5 (D) 15 (E) 25 Jawaban soal nomor 9: Soal ini merupakan soal algoritma pemrograman mengenai function.

II.” Bila kalimat tersebut benar. (C) Jumlah murid di tiap kelas lanjutan yang mendapat nilai 10 naik lebih dari 8%. Ada tiga kelas tingkat pemula dan dua kelas tingkat lanjutan. namun jumlah murid dari kelas pemula yang mendapatkan nilai 10 berkurang. alternatif jawaban yang paling benar adalah (E) Jumlah murid kelas lanjutan yang mendapat nilai 10 naik lebih banyak dibanding murid kelas pemula. Jawaban (C) : tidak bisa dipastikan bahwa jumlah murid tiap kelas lanjutan yang mendapat nilai 10 naik lebih dari 8%. maka Maya tidak makan bakso dan tidak pergi ke bioskop. salah satu dari kelas lanjutan mendapat nilai lebih dari 8%. Jawaban (D) : ada kemungkinan benar. Ibu Guru mengajarkan kursus Bahasa Inggris. Dari pernyataan pada soal diketahui bahwa total murid yang mendapat nilai 10 naik 8%. sesudah itu pergi ke bioskop. (D) Paling tidak satu dari kelas lanjutan memiliki kenaikan mendapat nilai 10 lebih dari 8%. Jawaban (E) : pernyataan ini pasti benar. 12. Jika Maya makan bakso dan tidak pergi ke bioskop maka hari itu bukan hari Sabtu. Jawaban (A) dan (B) tidak mungkin benar. (B) Ibu Guru memiliki jumlah murid di kelas lanjutan lebih sedikit daripada di kelas pemula. karena mungkin saja dari total kenaikan 8% tersebut. tetapi murid kelas pemula yang dapat nilai 10 turun. Dari hasil ujian pertama dan kedua. III. ”Hanya pada hari Sabtu. Kalimat manakah yang dapat disimpulkan dari uraian di atas: (A) Ibu Guru memiliki jumlah murid di kelas lanjutan lebih banyak daripada di kelas pemula.11. walaupun total murid yang mendapatkan nilai 10 bertambah 8%. Jika bukan Hari Sabtu. Maya makan bakso. karena soal tidak menyinggung tentang jumlah murid per kelas. kita tinjau alternatif jawaban yang disediakan satu per satu. Dari alternatif jawaban yang disediakan. Jika suatu hari Maya makan bakso dan pergi ke bioskop maka hari itu adalah hari sabtu. Jawaban soal nomor 16: Untuk menjawab pertanyaan ini. Ini berarti bahwa jumlah murid kelas lanjutan yang mendapat nilai 10 naik lebih banyak daripada murid kelas pemula. jadi jawaban (C) ini salah. . (E) Jumlah murid kelas lanjutan yang mendapat nilai 10 naik lebih banyak dibanding murid kelas pemula. manakah kalimat berikut ini yang juga harus benar? I.

sesudah itu pergi ke bioskop”. karena bisa saja Maya makan bakso ataupun pergi ke bioskop di hari selain Sabtu. maka hari itu bukan hari Sabtu. Maya makan bakso dan pergi ke bioskop”) II. (Pernyataan ini benar. (C) Hanya kamar-kamar di atas lantai ke dua yang memiliki tangga darurat. (E) Beberapa dari gedung-gedung asrama berlantai dua tidak memiliki tangga darurat. Perhatikan pernyataan pada soal mengandung arti bahwa ”Hanya pada hari Sabtu. (Pernyataan ini salah. dan dia tidak pergi ke bisokop. (D) Kamar-kamar di lantai ke empat memiliki tangga darurat. maka hari itu adalah hari Sabtu. Jika Maya makan bakso dan tidak pergi ke bioskop. pernyataan yang benar adalah pernyataan II dan III. (B) Kamar-kamar di lantai ke tiga tidak memiliki tangga darurat. yaitu sebagai berikut: I. Jika bukan hari Sabtu. Sesuai pernyataan pada soal. Dari tiga pernyataan tambahan. Maya makan bakso. kita diminta untuk menentukan pernyataan yang sesuai dengan pernyataan pada soal. bukannya ”Hanya pada hari Sabtu. Maya makan bakso. kalau Maya makan bakso dan pergi ke bioskop. (Pernyataan ini benar. 13. maka hari itu pastilah hari Sabtu) III. Berarti hari itu bukan hari Sabtu) Dengan demikian. Gedung-gedung asrama dibangun dengan 2 hingga 6 lantai. sesudah itu pergi ke bioskop”. Maya hanya makan bakso. Untuk keperluan ini. Setiap kamar pada setiap gedung mulai dari lantai ke 2 terus ke atas. dan berarti jawaban yang benar adalah (E) hanya II dan III. Jika hal itu benar. .(A) (B) (C) (D) (E) hanya I hanya II hanya II hanya I dan III hanya II dan III Jawaban soal nomor 11: Pernyataan pada soal adalah: “Hanya pada hari Sabtu. Jika suatu hari Maya makan bakso dan pergi ke bioskop. kita harus menganalisis pernyataan-pernyataan lain tersebut. manakah dari berikut ini yang benar? (A) Kamar-kamar di lantai ke dua tidak memiliki tangga darurat. maka Maya tidak makan bakso dan tidak pergi ke bioskop. harus memiliki tangga darurat untuk menghadapi kemungkinan kebakaran.

end. begin if n > 0 then begin jalan(n div 5). end akan di jalankan.write(5) Jadi. . end.jalan(9) ‐ jalan(1) ‐ jalan(0) ‐ write(2) ‐ write(5) . Diberikan penggalan program berikut : procedure jalan(n: integer). begin jalan(n div 5). jalan(49) : . 14. yang akan tercetak adalah 255 15. jika nilai n tersebut lebih besar dari nol maka statmen dibawahnya akan di jalankan. write(n mod 5 + 1). karena terdapat begin … end di bawahnya jadi 2 statmen di antara begin . write(n mod 5 + 1).. Pada pemanggilan jalan(49) pada procedure di atas ini apa yang akan dicetaknya kemudian? Pembahasan perhatian dengan baik program tersebut. end.Jawaban soal nomor 18: Pernyataan jawaban yang paling sesuai dengan pernyataan pada soal adalah jawaban (D) Kamar-kamar di lantai ke empat memiliki tangga darurat.

Sign up to vote on this title
UsefulNot useful