Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Remidi - XI

Total questions: 30

Worksheet time: 33mins

Name
Class
Date
1.

Metode yang digunakan dalam suatu penyelesaian masalah optimasi yang diselesaikan secara bertahap (step by step), dengan harapan hasil yang didapatkan merupakan hasil terbaik yang dapat diperoleh disebut dengan…

a)

Algoritma Greedy

b)

Algoritma Sorting

c)

Algoritma Searching

d)

Algoritma Recursive

2.

Bagian pengulangan sesuatu dengan prosedur kesamaan diri adalah....

a)

Greedy

b)

Knapsack

c)

Algoritma

d)

Rekursi

e)

Brute Force

3.

Metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan langkah (step) atau tahapan (stage) sedemikian sehingga solusi dari persoalan dapat dipandang dari serangkaian keputusan yang saling berkaitan adalah....

a)

Algoritma Genetik

b)

Program Dinamis

c)

Optimization Problems

d)

0/1 Knapsack

e)

Algoritma Greedy

4.

Algoritma yang akan mencoba satu per satu kemungkinan sampai mendapatkan hasil terbaik adalah ....

a)

greddy

b)

bruto force

c)

bubble sort

d)

insertion sort

e)

sequential search

5.
yang bukan teknik pemecahan masalah dalam algoritma adalah . . . .
a)
Devide and Conquer
b)
Decrease and Conquer
c)
increase and Conquer
d)
Devide and Conquer
e)
Transform and Conquer
6.

Tiara ingin membawa beberapa ekor ikan yang sudah tersimpan dalam kantong-kantong plastik untuk diangkut di dalam mobilnya. Terdapat 8 buah kantong dengan yang berisi masing-masing 1, 5, 2, 8, 4, 6, 6, dan 3 ekor ikan. Namun sayangnya, mobilnya hanya mampu membawah 4 buah kantong. Kantong-kantong manakah yang harus dibawa oleh Budi agar jumlah ikan yang dibawanya sebanyak mungkin?

a)

Kantong yang bernilai 1, 5, 2, dan 8

b)

Kantong yang bernilai 8, 6, 6, dan 5

c)

Kantong yang bernilai 8, 7, 6, dan 5

d)

Kantong yang bernilai 4, 3, 1, dan 1

e)

Kantong yang bernilai 9, 6, 7, dan 5

7.

Tentukan nilai X jika menggunakan teknik memoisasi pada gambar disamping...

a)

8

b)

23

c)

3

d)

4

e)

18

8.

Ketika di compile and run sesuai dengan gambar disamping, Maka akan menampilkan value ...

a)

1

b)

2

c)

5

d)

4

e)

Eror

9.

indeks pada array dimulai dari angka ...

a)

0

b)

1

c)

14

d)

eror

e)

5

10.

Perhatikan tabel disamping, Jika menggunakan algoritma greedy berapa PR yang bisa dikerjakan dalam waktu kurang dari atau sama dengan 8 jam ?

a)

D,I,G,F,J,B

b)

B,J,I,D,F,C,H

c)

B,G,E,C,H,J,F

d)

D,I,C,H,F,A,J

e)

E,B,G,J,A,F,H,C

11.

Suku ke-8 barisan bilangan fibonacci : 1, 1, 2, 3, 5, 8, 13, .. adalah...

a)

20

b)

21

c)

22

d)

23

e)

24

12.

Pada baris ke-9 syntax yang ditutupi blok warna hitam adalah…

a)

printf

b)

scantf

c)

if

d)

else

e)

int

13.

syntax yang berfungsi untuk mendeklarasikan  tentang tipe data adalah

a)

printf

b)

scanf

c)

if

d)

else

e)

int

14.

Suku ke-10 barisan bilangan fibonacci : 10, 15, 20, 25, 30, ... adalah...

a)

45

b)

50

c)

55

d)

60

e)

65

15.

pada perulangan while diatas akan menampilkan kata "TKJ STEMA" sebanyak...

a)

1

b)

7

c)

5

d)

6

16.

Hasil yang ditampilkan dari kode program di atas adalah ...

a)

0

b)

1

c)

2

d)

11

e)

Tidak menampilkan hasil

17.

Berdasarkan kode program di atas, agar dapat menampilkan “selamat anda lulus”, maka nilai yang tepat adalah…

a)

80

b)

81

c)

70

d)

71

e)

60

18.

Banu ternyata tidak lolos ke tingkat selanjutnya pada sebuah seleksi

perlombaan karena nilai pretest-nya tidak mencapai 60. Satu soal bernilai 5 poin jika jawaban benar, dan 0 jika salah. Banu memperoleh nilai 55, berarti Banu hanya kurang 1 soal saja yang seharusnya dia kerjakan benar untuk lolos ke seleksi tingkat berikutnya. Maka algoritma yang tepat untuk kondisi tersebut adalah …

a)

if(nilai == 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

b)

if(nilai != 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

c)

if(nilai > 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

d)

if(nilai >= 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

19.

Perhatikan potongan program dibawah ini !

if (nilai>=70){

    cout<<”lulus”; 

getch ( );

}

Jika program dijalankan dan “masukkan nilai = 60”, maka output program adalah…

a)

Lulus

b)

Tidak lulus

c)

Tidak mengeluarkan outo

d)

Error

20.

Algoritma percabangan dapat digunakan untuk beberapa kasus permasalahan berikut, kecuali ….

a)

menentukan kelulusan berdasarkan rata-rata

b)

menghitung sewa mobil di sebuah rental yang menyediakan banyak pilihan

c)

menentukan rata-rata seluruh siswa dalam satu kelas

d)

menentukan gaji berdasarkan golonganmenentukan diagnosa penyakit menuntukan gaji berdasarkan pengalaman

21.

Statement yang biasa di gunakan untuk pengambilan sebuah keputusan dimana ada 2 atau lebih kondisi yang harus kita pilih (true / false) disebut…

a)

Array

b)

Perulangan

c)

Fungsi

d)

Percabangan

22.

Dari potongan program di atas, deskripsi logika percabangan yang paling tepat adalah...

a)

Jika Y lebih atau sama dengan 17 maka ditampilkan “wanita dewasa” jika tidak berarti yang ditampilkan adalah “gadis”

b)

Jika Y lebih dari 17 maka ditampilkan “wanita dewasa” jika tidak berarti yang ditampilkan adalah “gadis”

c)

Termasuk percabangan 1 kondisi, dimana kondisinya adalah apakah Y lebih atau sama dengan 17 maka wanita dewasa

d)

Termasuk percabangan 2 kondisi, dimana kondisinya apakah Y lebih dari 17 maka wanita dewasa

23.

Banu ternyata tidak lolos ke tingkat selanjutnya pada sebuah seleksi

perlombaan karena nilai pretest-nya tidak mencapai 60. Satu soal bernilai 5 poin jika jawaban benar, dan 0 jika salah. Banu memperoleh nilai 55, berarti Banu hanya kurang 1 soal saja yang seharusnya dia kerjakan benar untuk lolos ke seleksi tingkat berikutnya. Maka algoritma yang tepat untuk kondisi tersebut adalah …

a)

if(nilai == 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

b)

if(nilai != 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

c)

if(nilai > 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

d)

if(nilai >= 60){

    cout<<“Lolos”;

}else{

cout<<“Tidak Lolos”;}

24.

Perhatikan potongan program dibawah ini !

if (nilai>=70){

    cout<<”lulus”; 

getch ( );

}

Jika program dijalankan dan “masukkan nilai = 60”, maka output program adalah…

a)

Lulus

b)

Tidak lulus

c)

Tidak mengeluarkan outo

d)

Error

25.

Berikut ini adalah contoh penerapan logika struktur percabangan, manakah dari pernyataan ini yang sesuai dengan algoritma percabangan 1 kondisi?

a)

Warung makan AMANAH memberikan diskon 25% setiap hari jum’at kepada semua pelanggannya

b)

Warung makan AMANAH memberikan diskon 10% untuk pembelian diatas 100.000 dan 20% untuk pembelian diatas 250.000

c)

Warung makan AMANAH memberikan diskon 10% setiap weekend dan memberikan 5% setiap weekday kepada semua pelanggannya

d)

Warung makan AMANAH tidak memberikan diskon apapun kepada semua pelanggannya

26.

Pernyataan paling tepat sesuai dengan potongan program di atas adalah....

a)

Jika pembelian belum mencapai 200.000 maka konsumen mendapatkan diskon 17%

b)

Jika konsumen berbelanja di atas 200.000, maka ketika membayar akan dikurangi dengan 17% dari total pembelian

c)

Jika konsumen berbelanja dibawah batas minimal 200.000, maka konsumen mendapatkan diskon 17%

d)

Jika konsumen berbelanja minimal 200.000, maka ketika membayar akan dikurangi dengan 17% dari total pembelian

27.

Perhatikan program berikut :

Program tersebut menghasilkan output?

a)

Belajar perulangan for 1 sampai 5

b)

Belajar perulangan for 1 sampai 9

c)

Belajar perulangan for 1 sampai 10

d)

Belajar perulangan for 1 sampai 10 kecuali 5

28.

Perhatikan gambar penggunaan FUNCTION. pada baris berapa penulisan syntax yang masih belum benar?

a)

6

b)

11

c)

13

d)

12

29.

Perhatikan gambar. Apa hasil jika program tersebut di "run"?

a)

A = (30,20)

b)

A (30,20) = 11

c)

A (50) = 11

d)

A = 50

30.

Perhatikan penggunaan function/fungsi pada gambar. syntax yang tepat untuk baris ke 11 adalah?

a)

hasil = hitung_luas(panjang*lebar);

b)

hasil = (a,b);

c)

hasil = hitung_luas;

d)

hasil = hitung_luas(a,b);