Bidang Studi : Informatika / Komputer Kode Berkas : KOM-L01 (solusi) 1. Jika : A bernilai FALSE B bernilai TRUE Maka pernyataan di bawah bernilai? ((A and B) or (B and not A)) xor (A and B) a. TRUE b. FALSE c. Jawaban A dan B keduanya dimungkinkan benar d. Tidak dapat ditentukan e. Tidak ada jawaban di antara A, B, C, D yang benar = ((A and B) or (B and not A)) xor (A and B) = ((T and F) or (F and not T)) xor (T and F) = (F or F) xor (F) = F xor F = F (FALSE) 2. Agar pernyataan di bawah memiliki nilai FALSE, maka kondisi yang harus dipenuhi adalah? ((A or B) or (B or A)) a. Keduanya harus bernilai TRUE b. Keduanya harus bernilai FALSE c. A harus bernilai TRUE, dan B harus bernilai FALSE d. A harus bernilai FALSE, dan B harus bernilai TRUE e. Tidak ada kondisi yang memenuhi Untuk menjadi FALSE, maka A or B harus False, sehingga A dan B harus keduanya False 3. Ada berapa bilangankah dalam barisan berikut ini? -100, -94, -88,, -482, -488, 494 a. 97 b. 98 c. 99 d. 100 e. 101
Un = a + (n-1) b 494 = -100 + (n-1) 6 n-1 = 594 / 6 n = 99 4. Perhatikan barisan bilangan berikut : baris 1 : 1 baris 2 : 2 3 baris 3 : 4 5 6 :....... baris n :........ Berapakah bilangan yang paling kanan dari baris ke 10? a. 54 b. 55 c. 56 d. 57 e. 58 Bilangan paling kiri pada baris ke-n adalah sigma(k) untuk k dari 1 sampai n Maka bilangan paling kanan dari baris 10 adalah sigma(k) [1-10] = 55 5. Dari soal nomor 4, Jika A adalah bilangan paling kiri dari baris ke-n Dan B adalah bilangan paling kanan dari baris ke-n Maka berapakah A+B jika n = 20? a. 371 b. 381 c. 391 d. 401 e. 411 A = Sn (19) aritmatika dengan U1=1, dan b=1 ditambah 1 = 190 +1 = 191 B = Sn (20) aritmatika dengan U1=1, dan b=1 = 210 A + B = 401 Jawaban : D
6. A = 1! X 2! 3! X 4! 5! X X N! Jika n = 10, maka berapa banyak angka 0 beruntun dibelakang yang dimiliki oleh bilangan A? a. 0 b. 1 c. 2 d. 3 e. 4 Hanya 1 7. Digit pertama dari 5 12 X 8 5 adalah? b. 2 c. 4 d. 5 e. 8 5 12 X 8 5 = 5 12 X 2 15 = 10 12 x 2 3 = 8000.00 8 Jawaban : E 8. Diketahui sebuah deret bilangan 1, 1, 1, 3, 5, 9, 17, A, B, Berapakah nilai B? a. 51 b. 53 c. 55 d. 57 e. 59 1, 1, 1, 3, 5, 9, 17, A, B, 1, 1, 1, 3, 5, 9, 17, 31, 57, Jawaban : D
begin end. a := 1000; b := 2000; a := a - b; b := a + b; a := a + 1; b := b - 2; a := b + 7; b := a + 5; c := b - a; writeln(c); 9. Berapakah output program diatas? b. 3 c. 5 d. 7 e. 9 Program diatas akan membuat selisih a dan b = 5, untuk berapapun angka a dan b positif. Maka c = 5 10. Jika pada soal diatas, nilai a dan b ditukar, maka berapakah output yang dihasilkan dari writeln (c)? a. 9 b. 7 c. 5 d. 3 e. 1 Program diatas akan membuat selisih a dan b = 5, untuk berapapun angka a dan b positif. Maka c = 5
begin end. x := 32; write(x - 10); x := x - 10; write(x - 10); x := x + 10; writeln (x); 11. Perintah write diatas akan menampilkan outpur berapa? a. 221222 b. 221212 c. 221232 d. 122212 e. 123222 Write (x-10) yang pertama 22 Write (x-10) yang kedua 12 Write (x) yang terakhir 32 Maka outputnya 221232 if (not(a) and c) xor (not(b) and d) then begin if ((a and b) xor not(d)) then writeln('a') else writeln('b') end else if(c and b) then begin if a then writeln('c') else writeln('d') end else if a or b then writeln('e') 12. Jika harga a = true, b = false, c = true, d = false, maka huruf apa yang akan muncul jika potongan program diatas dijalankan? a. E b. D c. C
d. B e. A Jika harga a, b, c, dan d dimasukkan ke potongan program diatas, maka conditional statemen yang atas akan tidak dipenuhi dan menuju conditional statemen paling bawah. Sehingga huruf yang di keluarkan adalah huruf E Jawaban : A 13. Jika input a, b, c, dan d diubah semua menjadi bernilai TRUE, maka huruf apa yang akan dimunculkan ketika potongan program diatas dijalankan? a. A b. B c. C d. D e. E Untuk input a = b = c = d = true, maka conditional statement paling atas akan dilewati dan menuju end else, dan mengecheck c and b dipenuhi, sehingga program menulis huruf C for i := 1 to n do total := total + total mod i; writeln(total); 14. Untuk potongan program diatas, jika nilai awal total = 1, dan n = 10, berapa nilai total pada akhir iterasi tersebut? a. 30 b. 28 c. 26 d. 24 e. 22 i = 1 total = 1 + 0 = 1; i = 2 total = 1 + 1 = 2; i = 3 total = 2 + 2 = 4; i = 4 total = 4 + 0 = 4; i = 5 total = 4 + 4 = 8; i = 6 total = 8 + 2 = 10; i = 7 total = 10 + 3 = 13;
i = 8 total = 13 + 5 = 18; i = 9 total = 18 + 0 = 18; i = 10 total = 18 + 8 = 26; 15. Jika output potongan program diatas adalah 102, dan nilai awal total = 1, maka berapakah nilai n (program di loop berapa kali)? 9 b. 20 c. 21 d. Jawaban A dan B benar e. Jawaban B dan C benar Karena yang memungkinkan memberi output 102 adalah n = 20 dan n = 21, maka jawaban B dan C benar Jawaban : E while (a <= b) do begin if (b mod a > 1) then if (b div a > 1) then a := a + b mod a; a := a + 3; end; case (a - b) of 1 : writeln ('1'); 2 : writeln ('2'); 3 : writeln ('3'); 4 : writeln ('4'); else writeln ('OxF'); end; 16. Diberikan nilai awal a = 1, dan b= 1024. Jika potongan program diatas dijalankan, maka berapakah output yang akan ditulis pada layer? b. 2 c. 3 d. 4 e. OxF
pada loop ke 1 nilai a = 4 pada loop ke 2 nilai a = 7 pada loop ke 3 nilai a = 12 pada loop ke 4 nilai a = 19 pada loop ke 5 nilai a = 39 pada loop ke - 6 nilai a = 52 pada loop ke 7 nilai a = 91 pada loop ke 8 nilai a = 117 pada loop ke 9 nilai a = 208 pada loop ke 10 nilai a = 403 pada loop ke 11 nilai a = 624 pada loop ke 12 nilai a = 627 pada loop berikutnya, nilai a akan di increment terus dengan 3 hingga nilainya lebih dari b. sehingga nilai b menjadi 1026. 1026 1024 = 2 17. Jika perintah baris kelima diganti dengan a := a + 4; maka berapakah output yang dikeluarkan jika nilai awal a = 10; dan b = 2048? b. 2 c. 3 d. 4 e. OxF pada loop ke - 1 nilai a = 22 pada loop ke - 2 nilai a = 28 pada loop ke - 3 nilai a = 36 pada loop ke - 4 nilai a = 72 pada loop ke - 5 nilai a = 108 pada loop ke - 6 nilai a = 216 pada loop ke - 7 nilai a = 324 pada loop ke - 8 nilai a = 432 pada loop ke - 9 nilai a = 756 pada loop ke - 10 nilai a = 1296 pada loop ke - 11 nilai a = 1300 pada loop ke - 12 nilai a = 1304
pada loop berikutnya, nilai a akan di increment terus dengan 4 hingga nilainya lebih dari b. sehingga nilai b menjadi 2052. 2052 2048 = 4 Jawaban : D 18. Untuk nilai awal a = 0, perintah statement baris kelima diganti dengan a := a + 4; dan semua nilai b bilangan integer positif, output manakan yang tidak mungkin di keluarkan jika program diatas dijalankan? b. 2 c. 3 d. 4 e. OxF Karena pengaruh iterasi while, maka nilai akhir a tidak akan sama dengan b, sehingga a b tidak mugkin nol, maka program tidak akan pernah mengeluarkan 0xF Jawaban : E