wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Struktur Data dan Algoritma

Total questions: 66

Worksheet time: 22mins

Name
Class
Date
1.

Apa yang dimaksud dengan struktur data dalam pemrograman?

a)

Sebuah bahasa pemrograman populer.

b)

Sebuah cara untuk mengatur instruksi dalam program.

c)

Sebuah cara untuk mengorganisasi dan menyimpan data dalam program.

d)

Sebuah metode untuk menghitung kecepatan eksekusi program.

2.

Apa tujuan dari penggunaan struktur data dalam pemrograman?

a)

Memerintah komputer untuk melakukan tugas tertentu.

b)

Mengurangi kebutuhan akan komentar dalam kode.

c)

Mengorganisasi dan mengelola data dengan efisien.

d)

Meningkatkan tampilan antarmuka pengguna.

3.

Apa yang dimaksud dengan array dalam pemrograman?

a)

Sebuah tipe data yang hanya bisa menyimpan bilangan bulat.

b)

Sebuah struktur data yang dapat digunakan untuk menyimpan beberapa nilai sekaligus dengan tipe data yang sama.

c)

Sebuah metode untuk mengkompres data.

d)

Sebuah perangkat keras penyimpanan data.

4.

Apa yang membedakan array dari variabel biasa dalam pemrograman?

a)

Array dapat menyimpan lebih dari satu tipe data.

b)

Array memiliki nama yang sama dengan variabel biasa.

c)

Array dapat menyimpan lebih dari satu nilai dengan tipe data yang sama.

d)

Array memiliki tipe data yang lebih umum daripada variabel biasa.

5.

Apa indeks pertama dalam array yang biasa dimulai dalam pemrograman?

a)

0

b)

1

c)

-1

d)

2

6.

Berapa banyak elemen yang ada dalam array dengan deklarasi berikut: int myArray[5];?

a)

0

b)

5

c)

4

d)

6

7.

Apa yang harus Anda lakukan untuk mengakses elemen tertentu dalam array?

a)

Gunakan tanda bintang (*) di depan nama array.

b)

Gunakan tanda titik (.) di depan elemen array.

c)

Gunakan indeks dalam tanda kurung siku [ ] di belakang nama array.

d)

Tidak perlu melakukan apa-apa, elemen array bisa diakses langsung.

8.

Apa itu stack dalam pemrograman dan apa tujuannya?

a)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan linier.

b)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan FIFO (First-In-First-Out).

c)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan LIFO (Last-In-First-Out).

d)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan acak.

9.

Apa yang dimaksud dengan struktur data dalam pemrograman?

a)

Sebuah bahasa pemrograman populer.

b)

Sebuah cara untuk mengatur instruksi dalam program.

c)

Sebuah cara untuk mengorganisasi dan menyimpan data dalam program.

d)

Sebuah metode untuk menghitung kecepatan eksekusi program.

10.

Apa tujuan dari penggunaan struktur data dalam pemrograman?

a)

Memerintah komputer untuk melakukan tugas tertentu.

b)

Mengurangi kebutuhan akan komentar dalam kode.

c)

Mengorganisasi dan mengelola data dengan efisien.

d)

Meningkatkan tampilan antarmuka pengguna.

11.

Apa yang dimaksud dengan array dalam pemrograman?

a)

Sebuah tipe data yang hanya bisa menyimpan bilangan bulat.

b)

Sebuah struktur data yang dapat digunakan untuk menyimpan beberapa nilai sekaligus dengan tipe data yang sama.

c)

Sebuah metode untuk mengkompres data.

d)

Sebuah perangkat keras penyimpanan data.

12.

Apa yang membedakan array dari variabel biasa dalam pemrograman?

a)

Array dapat menyimpan lebih dari satu tipe data.

b)

Array memiliki nama yang sama dengan variabel biasa.

c)

Array dapat menyimpan lebih dari satu nilai dengan tipe data yang sama.

d)

Array memiliki tipe data yang lebih umum daripada variabel biasa.

13.

Apa indeks pertama dalam array yang biasa dimulai dalam pemrograman?

a)

0

b)

1

c)

-1

d)

2

14.

Berapa banyak elemen yang ada dalam array dengan deklarasi berikut: int myArray[5];?

a)

0

b)

5

c)

4

d)

6

15.

Apa yang harus Anda lakukan untuk mengakses elemen tertentu dalam array?

a)

Gunakan tanda bintang (*) di depan nama array.

b)

Gunakan tanda titik (.) di depan elemen array.

c)

Gunakan indeks dalam tanda kurung siku [ ] di belakang nama array.

d)

Tidak perlu melakukan apa-apa, elemen array bisa diakses langsung.

16.

Apa itu stack dalam pemrograman dan apa tujuannya?

a)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan linier.

b)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan FIFO (First-In-First-Out).

c)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan LIFO (Last-In-First-Out).

d)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan acak.

17.

Apa operasi utama yang dapat dilakukan pada stack?

a)

Push dan Pop

b)

Add dan Remove

c)

Insert dan Delete

d)

Enqueue dan Dequeue

18.

Jika Anda memiliki stack kosong dan Anda melakukan operasi

a. Push(5),

b. Push(3),

c. Pop(),

berapa nilai yang akan dihapus?

a)

5

b)

3

c)

8

d)

Tidak ada yang dihapus karena stack kosong.

19.

Apa yang dimaksud dengan struktur data?

a)

Struktur data adalah jenis algoritma untuk memproses data.

b)

Struktur data hanya digunakan dalam pemrograman tingkat tinggi.

c)

Struktur data adalah cara untuk mengorganisir dan menyimpan data dalam komputer.

d)

Struktur data adalah format file untuk menyimpan gambar.

20.

Sebutkan tiga jenis struktur data!

a)

Array, Linked List, Tree

b)

Stack

c)

Queue

d)

Graph

21.

Apa perbedaan antara array dan linked list?

a)

Array memiliki ukuran dinamis dan akses cepat, sedangkan linked list memiliki ukuran tetap dan akses lebih lambat.

b)

Array dan linked list memiliki kecepatan akses yang sama dan ukuran yang sama.

c)

Linked list lebih efisien dalam penggunaan memori dibandingkan array.

d)

Array memiliki akses cepat dan ukuran tetap, sedangkan linked list memiliki ukuran dinamis dan akses lebih lambat.

22.

Jelaskan apa itu algoritma!

a)

Algoritma hanya digunakan dalam pemrograman.

b)

Algoritma adalah hasil dari penelitian ilmiah.

c)

Algoritma adalah sebuah perangkat keras komputer.

d)

Algoritma adalah serangkaian langkah-langkah sistematis untuk menyelesaikan masalah.

23.

Sebutkan langkah-langkah dalam menyusun algoritma!

a)

Analisis data yang tersedia

b)

1. Identifikasi masalah 2. Tentukan input dan output 3. Rancang langkah-langkah 4. Tulis algoritma 5. Uji algoritma 6. Perbaiki dan optimalkan

c)

Buat diagram alur

d)

Tentukan tujuan dan sasaran

24.

Apa itu kompleksitas waktu dalam algoritma?

a)

Kompleksitas waktu tidak berpengaruh pada performa algoritma.

b)

Kompleksitas waktu adalah ukuran efisiensi algoritma dalam hal waktu eksekusi seiring dengan pertumbuhan ukuran input.

c)

Kompleksitas waktu hanya berlaku untuk algoritma yang menggunakan rekursi.

d)

Kompleksitas waktu adalah ukuran ruang yang digunakan oleh algoritma.

25.

Jelaskan perbedaan antara algoritma pencarian linear dan biner!

a)

Pencarian linear memeriksa setiap elemen satu per satu, sedangkan pencarian biner membagi data terurut dan mencari dengan membandingkan nilai tengah.

b)

Pencarian linear menggunakan algoritma rekursif untuk menemukan elemen.

c)

Pencarian linear lebih cepat daripada pencarian biner.

d)

Pencarian biner hanya dapat digunakan pada data yang tidak terurut.

26.

Apa yang dimaksud dengan ekspresi data?

a)

Ekspresi data adalah representasi informasi dalam format yang dapat dipahami dan diproses.

b)

Ekspresi data adalah proses pengumpulan data dari berbagai sumber.

c)

Ekspresi data adalah cara untuk menyimpan data dalam database.

d)

Ekspresi data adalah metode untuk menghapus data yang tidak diperlukan.

27.

Sebutkan contoh ekspresi data dalam pemrograman!

a)

function calculate() {}

b)

let name = 'John'

c)

Contoh ekspresi data: x = 5, const pi = 3.14, let arr = [1, 2, 3]

d)

x + y = 10

28.

Apa itu stack dan bagaimana cara kerjanya?

a)

Stack adalah struktur data LIFO yang menggunakan operasi push dan pop.

b)

Stack adalah struktur data yang menyimpan data dalam urutan ascending.

c)

Stack adalah struktur data yang hanya dapat diakses secara acak.

d)

Stack adalah struktur data FIFO yang menggunakan operasi enqueue dan dequeue.

29.

Jelaskan konsep queue dalam struktur data!

a)

Queue adalah struktur data yang mengikuti prinsip FIFO (First In, First Out).

b)

Queue adalah struktur data yang hanya dapat diakses dari bagian tengah.

c)

Queue adalah struktur data yang mengikuti prinsip LIFO (Last In, First Out).

d)

Queue adalah struktur data yang tidak memiliki batasan dalam penyimpanan data.

30.

Apa yang dimaksud dengan rekursi dalam algoritma?

a)

Rekursi adalah metode untuk mengoptimalkan penggunaan memori.

b)

Rekursi adalah teknik di mana fungsi mengulangi perintah yang sama.

c)

Rekursi adalah cara untuk menyimpan data dalam array.

d)

Rekursi adalah teknik pemrograman di mana fungsi memanggil dirinya sendiri.

31.

Sebutkan keuntungan menggunakan struktur data yang tepat!

a)

Keuntungan menggunakan struktur data yang tepat termasuk efisiensi, pengurangan kompleksitas, dan pengelolaan memori yang lebih baik.

b)

Membuat kode lebih sulit dipahami

c)

Mengurangi penggunaan algoritma

d)

Meningkatkan waktu eksekusi program

32.

Apa itu graf dalam konteks struktur data?

a)

Graf adalah struktur data yang hanya menghubungkan dua simpul secara langsung.

b)

Graf adalah struktur data yang tidak memiliki hubungan antara simpul-simpulnya.

c)

Graf adalah struktur data yang hanya terdiri dari simpul tanpa sisi.

d)

Graf adalah struktur data yang terdiri dari simpul dan sisi yang menghubungkan simpul-simpul tersebut.

33.

Jelaskan bagaimana pohon biner bekerja!

a)

Pohon biner menyimpan data dalam bentuk tabel.

b)

Pohon biner bekerja dengan menyimpan data dalam simpul yang memiliki dua anak, memungkinkan operasi seperti penyisipan, penghapusan, dan pencarian.

c)

Pohon biner hanya dapat memiliki satu anak per simpul.

d)

Pohon biner tidak dapat melakukan operasi pencarian.

34.

Apa yang dimaksud dengan struktur data dalam pemrograman?

a)

Sebuah bahasa pemrograman populer.

b)

Sebuah cara untuk mengatur instruksi dalam program.

c)

Sebuah cara untuk mengorganisasi dan menyimpan data dalam program.

d)

Sebuah metode untuk menghitung kecepatan eksekusi program.

35.

Apa tujuan dari penggunaan struktur data dalam pemrograman?

a)

Memerintah komputer untuk melakukan tugas tertentu.

b)

Mengurangi kebutuhan akan komentar dalam kode.

c)

Mengorganisasi dan mengelola data dengan efisien.

d)

Meningkatkan tampilan antarmuka pengguna.

36.

Apa yang dimaksud dengan array dalam pemrograman?

a)

Sebuah tipe data yang hanya bisa menyimpan bilangan bulat.

b)

Sebuah struktur data yang dapat digunakan untuk menyimpan beberapa nilai sekaligus dengan tipe data yang sama.

c)

Sebuah metode untuk mengkompres data.

d)

Sebuah perangkat keras penyimpanan data.

37.

Apa yang membedakan array dari variabel biasa dalam pemrograman?

a)

Array dapat menyimpan lebih dari satu tipe data.

b)

Array memiliki nama yang sama dengan variabel biasa.

c)

Array dapat menyimpan lebih dari satu nilai dengan tipe data yang sama.

d)

Array memiliki tipe data yang lebih umum daripada variabel biasa.

38.

Apa indeks pertama dalam array yang biasa dimulai dalam pemrograman?

a)

0

b)

1

c)

-1

d)

2

39.

Berapa banyak elemen yang ada dalam array dengan deklarasi berikut: int myArray[5];?

a)

0

b)

5

c)

4

d)

6

40.

Apa yang harus Anda lakukan untuk mengakses elemen tertentu dalam array?

a)

Gunakan tanda bintang (*) di depan nama array.

b)

Gunakan tanda titik (.) di depan elemen array.

c)

Gunakan indeks dalam tanda kurung siku [ ] di belakang nama array.

d)

Tidak perlu melakukan apa-apa, elemen array bisa diakses langsung.

41.

Apa itu stack dalam pemrograman dan apa tujuannya?

a)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan linier.

b)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan FIFO (First-In-First-Out).

c)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan LIFO (Last-In-First-Out).

d)

Sebuah struktur data yang mengatur elemen-elemen dalam urutan acak.

42.

Apa operasi utama yang dapat dilakukan pada stack?

a)

Push dan Pop

b)

Add dan Remove

c)

Insert dan Delete

d)

Enqueue dan Dequeue

43.

Jika Anda memiliki stack kosong dan Anda melakukan operasi

a. Push(5),

b. Push(3),

c. Pop(),

berapa nilai yang akan dihapus?

a)

5

b)

3

c)

8

d)

Tidak ada yang dihapus karena stack kosong.

44.

Urutan langkah-langkah logis untuk menyelesaikan masalah yang disusun secara sistematis disebut ….

a)

Flowchart

b)

Variabel

c)

Algoritma

d)

Tipe data

e)

Konstanta

45.

Kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program) disebut?

a)

Bahasa Pemrograman

b)

Algoritma

c)

Proses

d)

Pseudocode

e)

Program

46.

Berikut merupakan syarat-syarat Algoritma yang baik, kecuali?

a)

Expandable

b)

Realibility

c)

Portability

d)

Specific

e)

Precise

47.

Bahasa Pemrograman dibagi menjadi 3 tingkatan yaitu Bahasa Pemrograman tingkat Tinggi, Menengah dan Rendah. Di bawah ini yang mana merupakan contoh Bahasa Pemrograman rendah yaitu..

a)

Java

b)

PHP

c)

Assembly

d)

Pascal

e)

Delphi

48.

Yang Bukan merupakan langkah-langkah Pembuatan Program yaitu?

a)

Menulis program

b)

Membuat Algoritma dan Struktur Cara Penyelesaian

c)

Mencari Kesalahan

d)

Membuat struktur pemilihan

e)

Mendefinisikan masalah

49.

Bagian teks algoritma yang digunakan sebagai tempat mendefinisikan nama dengan menentukan apakah teks tersebut adalah program, prosedur, fungsi disebut

a)

Algoritma

b)

Header

c)

Kamus

d)

Tipe Data

e)

Deklarasi

50.

Kamus adalah bagian teks algoritma

sebagai tempat untuk mendefinisikan, kecuali..

a)

Nama type

b)

Nama konstanta

c)

Nama variabel

d)

Nama algoritma

e)

Nama fungsi/prosedur.

51.

Penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program

a)

Struktur Grafis

b)

Pseudocode

c)

Flowchart

d)

Struktur Bahasa Indonesia

e)

Algoritma

52.

Memberikan gambaran yang efektif, jelas, dan ringkas tentang prosedur logic pada flowchart merupakan salah satu alasan menggunakan Flowchart yakni...

a)

Relationship

b)

Analysis

c)

Communication

d)

Flowchart

e)

Pseudocode

53.

Lambang pada nomor 4, disebut..

a)

Proses

b)

Aliran Data

c)

Input

d)

Output

e)

Terminator

54.

"Jika kondisi terpenuhi maka salah satu aksi akan dilaksanakan dan aksi yang lain diabaikan" merupakan pengertian dari Struktur Dasar Algoritma....

a)

Iteration Proccess

b)

Sequence Proccess

c)

Communication Proccess

d)

Selection Proccess

e)

Preparation Proccess

55.

Tipe data yang berfungsi untuk menyimpan data bilangan bulat positif dan negatif yaitu,..

a)

Integer

b)

Boolean

c)

Real

d)

Char

e)

String

56.

1 Word =

a)

1 bit

b)

1 byte

c)

8 bits

d)

2 bits

e)

2 bytes

57.

Yang bukan merupakan tipe data sederhana adalah..

a)

Array

b)

Boolean

c)

Integer

d)

Character

e)

real

58.

Fungsi yang memanggil dirinya sendiri secara langsung ataupun tidak disebut?

a)

Rekursif

b)

Space

c)

Struktur Program

d)

Refrensif

e)

Pointer

59.

Yang harus kita lakukan dalam menganalisa kompleksitas algoritma adalah, Kecuali..

a)

Menentukan efisiensi Waktu

b)

Menentukan efisiensi Memory/Space

c)

Menganalisis kemudahan Implementasi

d)

Menentukan Data Movement dan Stability

e)

Menghitung jumlah karakter yang digunakan

60.

Stack atau Tumpukan memakai sistem?

a)

LIFO

b)

FIFO

c)

Round Robbin

d)

Shortest Job First

e)

Priority Scheduling

61.

Queue atau Antrean memakai sistem?

a)

FIFO

b)

LIFO

c)

Round Robbin

d)

Shortest Job First

e)

Priority Scheduling

62.

Yang bukan istilah dalam Stack,.

a)

IsFull

b)

IsEmpty

c)

Push

d)

Pop

e)

Rear

63.

Yang bukan merupakan istilah istilah dalam Queue yaitu,.

a)

Put

b)

Clear

c)

Front

d)

Rear

e)

Dequeue

64.

Apa yang dimaksud dengan linked list dalam pemrograman?

a)

Sebuah metode untuk mengurutkan data.

b)

Sebuah tipe data yang hanya bisa menyimpan bilangan bulat.

c)

Sebuah struktur data yang menyimpan elemen dengan menggunakan node yang saling terhubung.

d)

Sebuah struktur data yang menyimpan elemen dalam urutan acak.

65.

Apa yang dimaksud dengan algoritma dalam pemrograman?

a)

Serangkaian langkah-langkah untuk menyelesaikan masalah.

b)

Struktur data yang digunakan untuk menyimpan informasi.

c)

Bahasa pemrograman yang digunakan untuk menulis kode.

d)

Metode untuk mengoptimalkan kecepatan eksekusi program.

66.

Dalam konteks pemrograman, apa itu 'Big O Notation'?

a)

Teknik untuk mengoptimalkan penggunaan memori.

b)

Notasi yang digunakan untuk menggambarkan kompleksitas algoritma.

c)

Standar untuk menulis kode yang bersih.

d)

Metode untuk mengukur kecepatan eksekusi program.