Soal olimpiade tik

6
SOAL OLIMPIADE TIK UNTUK SOAL 1 -2 Y := 10; X := 0; FOR I := 0 TO Y-1 DO BEGIN X:=X+ 2 * I; END; WRITELN (X); 1. BERAPAKAH OUTPUT DARI PROGRAM DIATAS? A. 112 B. 110 C. 90 D. 72 E. 45 Pembahasan : Program diatas akan mengulang pernyataan x:=x +2*i sebanyak 10 kali dari i = 0 sampai 9. 0 = 0 + 2*0 2 = 0 + 2*1 6 = 2 + 2*2 12 = 6 + 2*3 20 = 12 + 2*4 30 = 20 + 2*5 42 = 30 + 2*6 56 = 42 + 2*7 72 = 56 + 2*8 90 = 76 + 2*9 jadi nilai x yang akan dimunculkan adalah 90. OLEH :: BAMBANG TRIWALUYO

description

 

Transcript of Soal olimpiade tik

Page 1: Soal olimpiade tik

SOAL OLIMPIADE TIK UNTUK SOAL 1 -2Y := 10;X := 0;FOR I := 0 TO Y-1 DOBEGIN X:=X+ 2 * I;END;WRITELN (X);1. BERAPAKAH OUTPUT DARI PROGRAM DIATAS?A. 112B. 110C. 90D. 72E. 45

Pembahasan :Program diatas akan mengulang pernyataan x:=x +2*i sebanyak 10 kali dari i = 0 sampai 9.0 = 0 + 2*02 = 0 + 2*16 = 2 + 2*212 = 6 + 2*320 = 12 + 2*430 = 20 + 2*542 = 30 + 2*656 = 42 + 2*772 = 56 + 2*890 = 76 + 2*9jadi nilai x yang akan dimunculkan adalah 90.

OLEH :: BAMBANG TRIWALUYO

Page 2: Soal olimpiade tik

2. JIKA BARIS KELIMA (X:=X+2*I) DIGANTI DENGAN X:= X + IBERAPAKAH OUTPUT PROGRAM TERSEBUT?A. 112B. 110C. 90D. 72E. 45

Pembahasan :0 = 0 + 01 = 0 + 13 = 1 + 26 = 3 + 310 = 6 + 415 = 10 + 521 = 15 + 628 = 21 + 736 = 28 + 845 = 36 + 9jadi output nya adalah 45.

OLEH :: BAMBANG TRIWALUYO

Page 3: Soal olimpiade tik

UNTUK SOAL NO 3PROGRAM X;VARI,J,K,L : INTEGER;BEGINFOR I:= 1 TO 2 DOFOR J := 1 TO 2 DOWRITE (I*J);END.3. OUTPUT PROGRAM DIATAS ADALAH?A. 4B. 6C. 9D. 123246369E. 1 2 3 2 4 6 3 6 9

Pembahasan : i * j1) —> 1 * 1 = 1 2 * 1 = 2 3 * 1 = 32) —> 1 * 2 = 2 2 * 2 = 4 3 * 2 = 63) —> 1 * 3 = 3 2 * 3 = 6 3 * 3 = 9karena write jadi hasil yang akan dimunculkan berjejeer ke samping 123246369

OLEH :: BAMBANG TRIWALUYO

Page 4: Soal olimpiade tik

UNTUK SOAL NO 4PROGRAM X;VAR I, J, K,: INTEGER;BEGINJ:= 3;K:= 1;REPEATDEC(J) ;FOR I := 1 TO J DOK:= I + 5 * K;DEC(J) :UNTIL J < 0;WRITELN(K);END.4.. BERAPAKAH OUTPUT DARI PROGRAM DIATAS?A. 112B. 110C. 90D. 72E. 32

Pembahasan :Sebelumnya perlu diketahui arti atau guna dari fungsi dec(j). dec (fungsi) : mengurangi (decrements) nilai suatu variabelsintaks : dec (x, i); i >= 1x adalah varaibel yang dikurangii adalah nilai pengurangdalam penggalan program diatas terdapat dec (j) artinya pengurangan variabel j sebanyak 1 (karena ketentuan nilai pengurang lebih besar sama dengan 1.Berikutnya mari kita coba untuk menjalankan pernyatan yang terdapat dalam begin end.repeatdec (3) = 2untuk i = 1k = 1 + 5 * 1k = 6dec (2) = 11 < 0 <—false {program masih dijalankan}dec (1) = 0untuk i = 2k = 2 + 5 * 6k = 32dec (0) = -1-1 < 0 <— True {program berhenti dijalankan}Jadi output program diatas adalah 32.

OLEH :: BAMBANG TRIWALUYO

Page 5: Soal olimpiade tik

UNTUK SOAL 5 – 6FUNCTION FAK (X, Y: INTEGER) : INTEGER;BEGIN IF Y:= 0 THEN FAK := 1 ELSE FAK := X * FAK (X, Y-1);END;WRITELN (FAK(5, 3));

5. APA HASIL DARI PROGRAM DI ATAS! A. 125 B. 8 C. 81 D. 3 E. 15

Pembahasan :Ini adalah contoh kasus fungsi dengan mempergunakan rekursi (fungsi yang mampu memangil dirinya sendiri)Nilai x awal adalah 5, nilai y awal adalah 3 makafak (5,3) —> 5 * fak (5, 3-1) = 5 * 25 = 125fak (5,2) —> 5 * fak (5, 2-1) = 5 * 5 = 25fak (5,1) —> 5 * fak (5,1-1) = 5 * 1 = 5fak (5,0) (proses selesai karena y =0)Jadi yang muncul adalah125

OLEH :: BAMBANG TRIWALUYO

Page 6: Soal olimpiade tik

UNTUK SOAL 5 – 66. JIKA WRITELN (FAK(5,3)) DIGANTI MENJADI WRITELN (FAK(4,5)), HASIL DIMUNCULKAN ADALAH… A. 20 B. 9 C. 1024 D. 64 E. 5

Pembahasan :INilai x awal adalah 4, nilai y awal adalah 5 makafak (4,5) —> 4 * fak (4, 5-1) dengan mempergunakan hasil fak ( 4,4) –> 4 * 256 = 1024fak (4,4) —> 4 * fak (4, 4-1) dengan mempergunakan hasil fak ( 4,3) –> 4 * 64 = 256fak (4,3) —> 4 * fak (4,3-1) dengan mempergunakan hasil fak ( 4,2) –> 4 * 16 = 64fak (4,2) —> 4 * fak (4,2-1) dengan mempergunakan hasil fak ( 4,1) –> 4 * 4 = 16fak (4,1) —> 4 * fak (4,1-1) = 4 * 1 = 4fak (4,0) (proses selesai karena y =0)Jadi yang muncul adalah1024

OLEH :: BAMBANG TRIWALUYO