wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Ulangan Harian Kelas XI

Total questions: 20

Worksheet time: 18mins

Name
Class
Date
1.

Tahap pertama dalam proses pemrograman yang berfokus pada memahami kebutuhan dan mendefinisikan masalah disebut …

a)

A. Coding

b)

B. Problem Solving

c)

C. Testing

d)

D. Analyzing

e)

E. Debugging

2.

Hasil dari tahap analisis masalah adalah …

a)

A. File program dalam bentuk .py atau .cpp

b)

B. Pernyataan masalah yang mencakup input, output, dan batasan

c)

C. Algoritma dalam bentuk pseudocode

d)

D. Kasus uji (test case)

e)

E. Dokumentasi hasil pengujian

3.

Tahap yang menghasilkan algoritma berupa narasi, pseudocode, atau diagram alir adalah …

a)

A. Analyzing

b)

B. Coding

c)

C. Testing

d)

D. Debugging

e)

E. Problem Solving

4.

Tahap implementasi dalam pemrograman melibatkan kegiatan …

a)

A. Membuat test case dan menguji hasil keluaran

b)

B. Menulis algoritma dalam bahasa manusia

c)

C. Menulis kode program menggunakan bahasa pemrograman

d)

D. Mengidentifikasi masalah yang ingin diselesaikan

e)

E. Membuat diagram alir proses kerja

5.

Tujuan utama tahap testing adalah …

a)

A. Menambahkan fitur baru agar program lebih menarik

b)

B. Menemukan kesalahan logika atau bug dalam program

c)

C. Mengubah bahasa pemrograman yang digunakan

d)

D. Menyusun algoritma baru dari awal

e)

E. Mendesain ulang antarmuka pengguna

6.

Manakah dari pernyataan berikut yang tidak benar tentang pemrograman?

a)

A. Pemrograman mencakup analisis, desain, implementasi, dan pengujian.

b)

B. Coding adalah satu-satunya bagian terpenting dari pemrograman.

c)

C. Program kompleks biasanya dibangun secara bertahap.

d)

D. Algoritma dapat ditulis dalam bentuk pseudocode atau diagram alir.

e)

E. Pengujian dilakukan untuk memastikan program berjalan sesuai batasan.

7.

Perhatikan potongan kode berikut ...

Apa fungsi dari pernyataan if tersebut?

a)

A. Mengecek apakah semua sisi memiliki nilai positif

b)

B. Mengecek apakah segitiga memiliki dua sisi sama panjang

c)

C. Mengecek apakah tiga sisi memenuhi syarat membentuk segitiga

d)

D. Mengecek apakah ketiga sisi sama panjang

e)

E. Mengecek apakah salah satu sisi bernilai nol

8.

Rekursi dalam konteks pemrograman berarti …

a)

A. Mengulang proses menggunakan loop

b)

B. Fungsi yang memanggil dirinya sendiri

c)

C. Menyimpan data di dalam variabel yang sama

d)

D. Program yang berjalan dua kali

e)

E. Menggunakan algoritma tanpa perulangan

9.

Contoh kasus klasik yang menggunakan rekursi adalah …

a)

A. Sorting dengan bubble sort

b)

B. Menghitung faktorial dan deret Fibonacci

c)

C. Menghitung rata-rata nilai siswa

d)

D. Mencetak kalimat berulang dengan for loop

e)

E. Menampilkan teks di layar

10.

Jika a1=1 dan a2=1, maka berapakah nilai a6​ pada barisan Fibonacci?

a)

A. 5

b)

B. 8

c)

C. 13

d)

D. 21

e)

E. 34

11.

Dalam konteks informatika, kata greedy berarti …

a)

A. Rakus dalam arti negatif

b)

B. Strategi untuk menipu hasil perhitungan

c)

C. Strategi penyelesaian masalah dengan mengambil langkah terbaik di setiap tahap

d)

D. Algoritma yang selalu menghasilkan jawaban salah

e)

E. Cara kerja komputer dalam mode otomatis

12.

Larik (array) dalam pemrograman digunakan untuk …

a)

A. Menyimpan banyak data dengan satu nama variabel dan indeks

b)

B. Menyimpan hanya satu nilai secara permanen

c)

C. Menyimpan data dalam bentuk file teks

d)

D. Mengurutkan data secara otomatis

e)

E. Menyimpan data tanpa urutan

13.

Nomor pada loker dalam analogi array berfungsi sebagai …

a)

A. Nilai yang disimpan dalam array

b)

B. Tipe data array

c)

C. Indeks untuk mengenali posisi data

d)

D. Ukuran dari array

e)

E. Kunci pengurutan data

14.

Jika sebuah array memiliki 10 elemen, maka indeks pertama dan terakhirnya adalah …

a)

A. 0 dan 10

b)

B. 1 dan 10

c)

C. 0 dan 9

d)

D. 1 dan 9

e)

E. 0 dan 8

15.

Lengkapilah bagian program berikut agar dapat menampilkan isi larik dari vector<int> dengan benar:

a)

A. larik[i]

b)

B. bilangan

c)

C. &larik

d)

D. vector[i]

e)

E. ukuran[i]

16.

Lengkapilah bagian yang kosong (tanda garis bawah __________) agar program dapat berjalan dengan benar dan menampilkan isi array dua dimensi!

a)

A.
(1) [2][3]
(2) matriks[i][j]

b)

B.
(1) [3][2]
(2) matriks[j][i]

c)

C.
(1) [2][2]
(2) matriks[i]

d)

D.
(1) [3][3]
(2) matriks[j]

e)

E.
(1) [1][6]
(2) matriks[i+j]


17.

Lengkapilah bagian yang kosong (__________) agar program dapat membaca sebuah kata dari pengguna dan menampilkannya kembali dalam huruf kecil semua.

a)

A.
(1) string.h
(2) tolower(str[i])

b)

B.
(1) iostream
(2) toupper(str[i])

c)

C.
(1) math.h
(2) str[i] + 32

d)

D.
(1) vector
(2) char(str[i])

e)

E.
(1) stdio.h
(2) tolowercase(str[i])

18.

Fungsi tolower() dalam bahasa C++ digunakan untuk …

a)

A. Mengubah semua huruf menjadi huruf besar

b)

B. Menghapus karakter huruf kecil dari string

c)

C. Mengubah huruf besar menjadi huruf kecil

d)

D. Menghitung jumlah huruf dalam string

e)

E. Membandingkan dua karakter

19.

Jika terdapat kode berikut:

Output yang dihasilkan adalah …

a)

A. a

b)

B. A

c)

C. aa

d)

D. error

e)

E. 97

20.

Perhatikan potongan kode berikut:

Apa hasil output program tersebut?

a)

A. C++SERU

b)

B. c++seru

c)

C. C++seru

d)

D. c++SERU

e)

E. error