Soal No.1
Pembahasan:
Tangki dgn 6
kran air bila dibuka semua air habis dalam waktu 8 jam
Berapa jam
waktu yang dibutuhkan bila hanya 4 kran air yang dibuka?
6 kran = 8
jam
4 kran = x
jam
Maka
perbandingannya = x = (8 x 6)/4 = 12
Jawaban: D
Soal No.2
Pembahasan:
Berapa
banyak angka lima(5) yang harus dibuat dari bilangan 1 s.d. 100?
Dari
bilangan 1 s.d. 100, urutan angka 5 adalah
5,15,25,35,45,50,51,52,53,54,
5 5,56,57,58,59,65,75,85,95
1
2 3 4 5 6 7
8 9 10 11 12 13 14 15 16 17 18 19 20
Jadi, total
ada 20 angka lima yang dibutuhkan untuk di tempel
Jawaban:D
Soal No.5
Enam acara
pertunjukan kesenian akan berlangsung dari jam 17.00 hingga jam 21.00. Antara
acara satu dengan acara berikutnya harus terdapat jeda selama 5 menit. Setiap
acara akan diberi jatah waktu yang sama kecuali acara ketiga akan diberikan
waktu lebih lama 10 menit dan acara terakhir akan diberi waktu tepat 1 jam.
Berapa lama waktu jatah waktu acara ketiga?
Pembahasan:
Kita harus
membuat pola seperti ketentuan soal
|
1
|
2
|
3
|
4
|
5
|
6
|
|
5
|
5
|
5
|
5
|
5
|
Dari jam
17.00 s.d. 21.00 = 4 jam
Acara
terakhir(ke-6) = 1 jam
Sisa Waktu
utk 5 acara = 3 jam x 60 menit = 180 menit
Jeda waktu
untuk 5 acara x 5 menit = 25 menit
Sisa
waktu
= 180 – 25 = 155 menit
Acara
ketiga
= 155 – 10 = 145 menit
Waktu u/
Tiap acara = 145/5 = 19 menit
Jadi untuk
acara ketiga adalah = 19 menit + 10 = 29 ment
Jawaban: D
Soal No.6
Diketahui
Pembahasan:
W < X
< Y< Z
W x Y = 32,
kemungkinan W=4, Y=8
X x Z = 50,
kemungkinan X =5, Z=10
Maka nilai X
x Y = 5 x 8 = 40
Jawaban: D
Soal No.7
Pembahasan:
W,X,Y,Z
adalah bilangan bulat positif
W x Y = 32,
kemungkinan W=4, Y=8
X x Z = 100,
kemungkinan X=5, Z=20
Maka Y x Z =
8 x 20 =160
Jawaban: B
Soal No.31
Pembahasan:
//x
dan y bertipe integer
1. x
:=-16; y:=8;
2. x
:= x + y; --> -16 + 8 = -8
3. x
:= y - x; --> 8 - -8 = 16
maka nilai
hasil eksekusi program tsb adalah x=-8 dan y=8
Jawaban: A
Soal No.32
Pembahasan:
//x
dan y bertipe integer
1. x
:=20; y:=35;
2. x
:= x + y; --> 20 + 35 = 55
3. y
:= x - y; --> 55 - 35 = 20
4. x
:= x - y; --> 55 - 20 = 35
maka nilai
hasil eksekusi program tsb adalah x=35 dan y=20
Jawaban: B
Soal No.33
Potongan
Algoritma
procedure cetak(a:byte);
begin
while
a>0 do
begin
write(a mod 2);
a := a shr 1;
end;
end;
Prosedur
yang dipanggil dengan parameter 123(cetak(13)) akan mencetak..
Pembahasan:
Alurnya
seperti berikut:
cetak(13)
a=13,
a > 0 --> write 1
a=13 shr 1 = 00001101 --> 110 = 6
a=6, a > 0 --> write 0
a=6 shr
1 = 00000110 --> 11 = 3
a=3, a > 0 --> write 1
a=3 shr 1 = 00000011
--> 1 = 1
a=1, a > 0 --> write 1
a=1 shr 1 = 00000001 --> 0 = 0
a=0,
parameter
123 digunakan untuk membuat Tampilan Terformat
Untuk
mengatur bentuk tampilan dari tampilan default ke bentuk yang diinginkan atau
Batasan cetak
- Parameter Char:n
Batasan
cetak/ bentuk tampilan/ jarak tampil data char
Contoh
program :
Var
Ket1, Ket2 :
char ;
Begin
Ket1 :
= ‘A’ ;
Ket2 :
= ‘B’ ;
Writeln
(Ket1 : 5, Ket2 : 3);
End.
Output
program :
bbbbAbbB
* ket : b =
blank
·
Parameter String:n
Batasan cetak/ bentuk tampilan/ jarak tampil data
string
·
Parameter Boolean:n
Batasan cetak/ bentuk tampilan/ jarak tampil data
Boolean
·
Parameter Integer:n
Batasan cetak/ bentuk tampilan/ jarak tampil data
Integer
·
Parameter Real:n:m
Batasan cetak/ bentuk tampilan/ jarak tampil data Real
Jadi hasil
cetakan yang mungkin dan benar adalah 1111011
Jawaban: D
Soal No.34
Suatu array
berindeks dari 2 s.d. 10 dan setiap elemennya berisi huruf-huruf berurutan
dari ‘a’ sampai ‘j’. Suatu algoritma bekerja pada array tersebut sbb.
(Prosedur swap(a,b) adalah menukarkan harga a dan b)
For I := 1 to 10 do
Swap(X[i],X[10-i+1]);
For I := 1 to 10 do write(X[i]);
Hasil yang
dicetak adalah…
Pembahasan:
Array
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
|
a
|
b
|
c
|
d
|
e
|
f
|
g
|
h
|
i
|
j
|
Langkah for
I dan swap
|
swap
|
||
|
I ke-
|
X[i]
|
X[10-i+1]
|
|
1
|
X[1]=j
|
X[10]=a
|
|
2
|
X[2]=i
|
X[9]=b
|
|
3
|
X[3]=h
|
X[8]=c
|
|
4
|
X[4]=g
|
X[7]=d
|
|
5
|
X[5]=f
|
X[6]=e
|
|
6
|
X[6]=f
|
X[5]=e
|
|
7
|
X[7]=g
|
X[4]=d
|
|
8
|
X[8]=h
|
X[3]=c
|
|
9
|
X[9]=i
|
X[2]=b
|
|
10
|
X[10]=j
|
X[1]=a
|
Tercetak
dari i=1 sampai 1=10
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
|
a
|
b
|
c
|
d
|
e
|
f
|
g
|
h
|
I
|
J
|
Jawaban: A
Soal No.35
For I := 2
to 9 do
Swap(X[i-1],X[i+1]);
For I := 1 to 10 do write(X[i]);
Hasil yang
dicetak adalah…
Pembahasan:
Array
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
|
a
|
b
|
c
|
d
|
e
|
f
|
g
|
h
|
i
|
j
|
Langkah for
I dan swap
|
swap
|
||
|
I ke-
|
X[i-1]
|
X[i+1]
|
|
2
|
X[1]=c
|
X[3]=a
|
|
3
|
X[2]=d
|
X[4]=b
|
|
4
|
X[3]=e
|
X[5]=a
|
|
5
|
X[4]=f
|
X[6]=b
|
|
6
|
X[5]=g
|
X[7]=a
|
|
7
|
X[6]=h
|
X[8]=b
|
|
8
|
X[7]=i
|
X[9]=a
|
|
9
|
X[8]=j
|
X[10]=b
|
Tercetak
dari i=1 sampai 1=10
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
|
C
|
d
|
e
|
f
|
g
|
h
|
i
|
j
|
a
|
b
|
Jawaban: D
Soal No.36
Array
Seperti soal no.34
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
|
a
|
b
|
c
|
d
|
e
|
f
|
g
|
h
|
i
|
j
|
Bekerja pada
algoritma
Procedure
lagi(a:integer; b:integer);
Var
t:integer;
Begin
t:=(a+b)div 2;
if(a<=b) then begin
write(x[t]);
lagi(a,t-1);
lagi(t+1,b);
end;
End;
Maka,
pemanggilan lagi(1,10) akan mencetakkan keluaran:…
Pembahasan:
|
Lagi(a,b)
|
t:=(a+b)div
2
|
a < b
|
write(x[t])
|
lagi(a,t-1)
|
lagi(t+1,b)
|
|
Lagi(1,10)
|
t=11 div
2=5
|
1 <10
|
x[5]=’e’
|
Lagi(1,4)
|
|
|
Lagi(1,4)
|
t=5 div
2=2
|
1<5
|
x[2]=’b’
|
Lagi(1,1)
|
|
|
Lagi(1,1)
|
t=1 div
2=1
|
x[2]=’a’
|
|||
Bila Anda
kesulitan melanjutkan pengerjaan soal ini,hentikan. Coba Anda cocokkan jawaban
yang 3 karakter depannya adalah “eba”.
Ada
bukan?dan hanya satu pilihan.
Jawaban :A
Soal No.37
Pembahasan:soal
no.37,38,39
sum
:=0;
//inisialisasi I à i := 2;
while
i < 31 do à hargabatas = 31 agar dapat mengakses dari 1 s.d 30
begin
sum := sum + tabeldata[i];
//increment i à i := i + 2;
end;
writeln(sum);
end.
Jawaban: C
Soal No.38
Jawaban: D
Soal No.39
Jawaban: A
Soal No.40
Pembahasan
2+ 4+
6+ 8+10 = 30
12+14+16+18+20
= 80
22+24+26+28+30
=130 +
240
Jawaban: A






0 komentar:
Posting Komentar