Anda di halaman 1dari 7

Soal dan Jawaban

Algoritma

1. Perhatikan notasi algoritma berupa pseudocode dibawah ini


Program Perhitungan Volume Balok
DESKRIPSI
{Program untuk melakukan perhitungan terhadap volume dan luas permukaan
pada balok}
DEKLARASI
p = 20, l = 12, t = 15, lp, volume : integer

BEGIN
lp <- 2 x ( p x l) + 2 x ( p x t) + 2 x( l x t )
output(lp)
volume <- p x l x t
output(volume)

END

Apakah keluaran yang akan ditampilkan pada notasi pseudocode berikut

a. lp = 1440 ; volume = 3600

b. volume = 3600 ; lp = 1440

c. Ditemukannya kesalahan pada operator perhitungan yang digunakan yang dimana tanda
kali (x), seharusnya berupa tanda kali (*)

d. Keluaran yang akan ditampilkan hanyalah volume = 3600

e. Semua jawaban salah

Jawaban : (c)

2. Perhatikan notasi algoritma berupa pseudocode dibawah ini


Program Perulangan Kata
DESKRIPSI
{Program yang dapat mengulangi suatu kata dengan batasan yang ditetapkan}
BEGIN
FOR word IN 1 TO ...
DO Write(‘Saya berjanji akan mengumpulkan tugas tepat waktu’)
ENDFOR

END
Didalam pembuatan pseudocode diatas Andra ingin membuat program yang dapat
menampilkan kata sebanyak 100 kata yang sama, maka untuk melengkapi tanda titil-titik (...)
diatas, angka yang harus dimasukkan didalam pseudocode diatas adalah

a. 97

b. 98

c. 99

d. 100

e. 101

Jawaban : (e)

3. Perhatikan notasi algoritma berupa flowchart dibawah ini

START

PENDEKLARASIAN
int num = ?, result;

PROSES OUTPUT
IF
result = FALSE ͞Bilangan
result % 2 == 0
num*num*num Ganjil͟

TRUE

OUTPUT
͞Bilangan
Genap͟

OUTPUT
result

END return 0
Pada pseudocode diatas apabila variabel num bernilai 123, maka keluaran yang ditampilkan
berupa ?

a. 1860867 ; Bilangan Ganjil

b. Bilangan Ganjil ; 1860867

c. 1860867

d. Bilangan Ganjil

e. Semua Jawaban Benar

Jawaban : (b)

Soal dan Jawaban

Logika

1. Perhatikan deretan angka dibawah ini.

2 5 ... 12 ... 31

50 ... 131 ... 343 ...

... 1453 ... 3804 ... 9959

Untuk melengkapi titik-titik pada deretan angka diatas secara berturut-turut, maka
angka yang tepat adalah ?

a. 5, 18, 81, 212, 555, 878, 2222, 6434

b. 6, 18, 82, 213, 556, 868, 2122, 6156

c. 7, 19, 81, 212, 555, 898, 2351, 6155

d. 8, 19, 84, 213, 556, 878, 2351, 6155


e. 9, 20, 81, 215, 556, 898, 2122, 6156

Jawaban : c (Pola Fibonachi)

2. Bu Siska ingin membuat program sistem manajemen di sekolah yang diajarnya. Jika
bu Siska menyewa 3 orang programmer yang dapat menyelesaikan program tersebut
dalam 90 hari, namun bu Siska ingin menyelesaikan program tersebut dalam 30 hari,
maka banyaknya programmer yang diperlukan bu Siska di dalam menyelesaikan
program tersebut adalah ?

a. 5 programmer

b. 9 programmer

c. 10 programmer

d. 15 programmer

e. 20 programmer

Jawaban : b

3. Usia Quenny 3 kali lipat dari usia Putri sedangkan Usia Rere 2 tahun lebih tua dari
usia Putri. Pada 10 tahun lagi usia ketiganya ketika dijumlahkan menjadi 252 tahun,
jadi berapakah usia Putri dan Quenny dijumlahkan, kemudian dikurangi dengan usia
Rere sekarang ?

a. 127 Tahun

b. 128 Tahun

c. 129 Tahun

d. 130 Tahun

e. 131 Tahun

Jawaban : d
Soal dan Jawaban

Pemrograman

1. Perhatikan kode program berikut untuk menjawab soal nomor 1 dan 2 !

public static void main(String[] args) {

int num[] = {20, 24, 18, 23, 8, 25, 12};

int cari = 24;

int index = num.length / 2;

boolean find = false;

int tengah = index;

while (index >= 0 && index < num.length && find == false) {

if (cari == num[index]) {

System.out.println("Data ditemukan pada index ke-" +


index);

find = true;

} else {

if (cari < num[tengah]) {

index--;

} else {

index++;

if (find == false) {

System.out.println("Data tidak ditemukan");

}
}
Kode program diatas merupakan program yang berguna dalam ... dan apa algoritma
yang digunakan ?

a. Pengurutan ; Bubble Sort

b. Pengurutan ; Quick Sort

c. Pencarian ; Binary Search

d. Pencarian; Linear Search

e. Pengurutan ; Selection Sort

Jawaban : (c)

2. Perhatikan kode program tersebut, apakah program tersebut dapat berjalan dengan baik ?

a. Berjalan dengan baik tanpa adanya kesalahan.

b. Berjalan dengan baik, namun tidak sesuai dengan harapan karena angka-angka
yang dimasukkan tidak sesuai dengan urutan dari bilangan yang terkecil
hingga terbesar.

c. Berjalan dengan baik, namun tidak sesuai dengan harapan karena angka-angka
yang dimasukkan tidak sesuai dengan urutan dari bilangan yang terbesar
hingga terkecil.

d. Tidak berjalan dengan baik, karena adanya kesalahan di dalam penulisan


program.

e. Tidak berjalan dengan baik, karena algoritma di dalam program tersebut salah

Jawaban : (b)

3. Perhatikan kode program di bawah ini.

int main()
{
int i,j;
int num[] = {20, 24, 18, 23, 8, 25, 12};
int tmp;

for(i=0; i<7; i++)


{
for(j=i; j<7; j++)
{
if(num[i] < num[j])
{
tmp = num[j];
num[j] = num[i];
num[i] = tmp;
}
}
}

for(i=0;i<7;i++)
{
cout<<" "<<num[i];
}

getch();
}

Apa keluaran (output) dari program tersebut ?

a. 8 12 20 23 24 25

b. 25 24 23 20 12 8

c. 20 24 18 23 8 25 12

d. 20 24 18 25 23 12 8

e. 8 20 12 23 25 24

Jawaban : (b)

Anda mungkin juga menyukai