Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Algoritma, Flowchart, dan Pseudocode

Total questions: 80

Worksheet time: 40mins

Name
Class
Date
1.

Yang di maksud dengan Algoritma adalah...

a)

Program yang sudah dijalankan computer

b)

Urutan langkah logis dan sistematis untuk menyelesaikan masalah

c)

Kode biner

d)

Bahasa pemrograman

e)

Kumpulan perintah acak

2.

Simbol flowchart untuk input/output adalah...

a)

Oval

b)

Persegi Panjang

c)

Belah ketupat

d)

Jajar genjang

e)

Panah

3.

Simbol belah ketupat dalam flowchart digunakan untuk...

a)

Proses

b)

Loop

c)

Pengambilan Keputusan

d)

Output

e)

Penyimpanan

4.

Contoh bahasa pemrograman tingkat tinggi adalah...

a)

Biner

b)

Assembly

c)

Python

d)

BIOS

e)

Machine code

5.

Urutan algoritma menghitung luas segitiga adalah...

a)

Input → Output → Hitung

b)

Mulai → Proses → Input → Output

c)

Mulai → Input → Hitung → Output

d)

Input → Mulai → Output

e)

Mulai → Hitung → Input

6.

Yang bukan termasuk komponen pemrograman adalah...

a)

Hardware

b)

Software

c)

Brainware

d)

Anyware

e)

Semua benar

7.

Berikut yang bukan ciri flowchart adalah...

a)

Mempermudah visualisasi

b)

Menggunakan simbol standar

c)

Bebas interpretasi

d)

Membantu menemukan kesalahan logika

e)

Memperjelas alur proses

8.

Jika sebuah percabangan memiliki dua cabang, maka...

a)

Program harus diulang

b)

Harus ada kondisi Ya/Tidak

c)

Program langsung selesai

d)

Algoritma tidak dapat dilanjutkan

e)

Harus kembali ke awal

9.

Kelebihan dari pseudocode adalah...

a)

Hanya dipahami programmer ahli

b)

Bergantung pada bahasa tertentu

c)

Mengabaikan logika dan fokus sintaks

d)

Mudah dipahami lintas Bahasa

e)

Hanya untuk proyek besar

10.

Simbol terminator dalam flowchart digunakan untuk...

a)

Proses

b)

Pengulangan

c)

Mulai dan selesai

d)

Input

e)

Penyimpanan

11.

Jika dalam flowchart terdapat langkah "Input angka A dan B", langkah logis berikutnya adalah...

a)

Hapus variable

b)

Hitung sesuai kebutuhan

c)

Tampilkan gambar

d)

Keluar program

e)

Kembali ke awal

12.

Tipe data untuk nilai desimal adalah...

a)

Integer

b)

Float

c)

Boolean

d)

String

e)

Char

13.

Representasi algoritma paling cocok untuk menggambarkan alur proses adalah...

a)

Tabel

b)

Flowchart

c)

Paragraf

d)

Rumus

e)

Gambar bebas

14.

Contoh penulisan pseudocode yang benar adalah...

a)

start: {print "halo"}

b)

BEGIN PRINT "halo" END

c)

d)

run halo()

e)

OUTPUT: start()

15.

Sebuah algoritma menambah nilai x dengan 5 lalu mengalikannya dengan 2. Jika x=3x=3 , hasilnya adalah...

a)

6

b)

8

c)

10

d)

16

e)

18

16.

Kelebihan flowchart dalam pengembangan algoritma adalah...

a)

Meningkatkan ukuran file

b)

Sulit dipelajari

c)

Membantu memahami alur dengan lebih jelas

d)

Tidak bisa digunakan untuk percabangan

e)

Menghambat debugging

17.

Berikut urutan algoritma yang tidak logis adalah...

a)

Mulai → Input → Proses → Output

b)

Mulai → Output → Input

c)

Mulai → Input → Output

d)

Mulai → Input → Proses

e)

Mulai → Proses → Output

18.

Jika flowchart menunjukkan proses " C=A+BC=A+B , maka...

a)

Nilai A dikurangi B

b)

Nilai C adalah hasil penjumlahan A dan B

c)

Nilai B dikalikan A

d)

Nilai B dibagi A

e)

A menjadi nol

19.

Pseudocode berikut memiliki kesalahan: BEGIN INPUT A OUTPUT A + END Kesalahan terletak pada...

a)

Tidak ada END

b)

Kurangnya nilai setelah operator +

c)

Salah menggunakan BEGIN

d)

INPUT tidak boleh digunakan

e)

OUTPUT tidak boleh berada di akhir

20.

Output dari kode berikut adalah: for i in range(5):

a)

Tidak ada output karena tidak ada perintah di dalam loop

b)

0 1 2 3 4

c)

1 2 3 4 5

d)

0 1 2 3 4 5

21.

Jika kondisi dalam flowchart adalah "A > B" dan A = 3, B = 6, maka alur yang dipilih adalah...

a)

True

b)

False

c)

Loop

d)

Input ulang

e)

Error

22.

Perintah "Masukkan angka N" merupakan bagian dari...

a)

Proses

b)

Output

c)

Input

d)

Penyimpanan

e)

Terminator

23.

Kode berikut menghasilkan error: print("Halo" Kesalahan terjadi karena...

a)

Variabel tidak ada

b)

Tanda kutip salah

c)

Tanda kurung kurang

d)

print tidak boleh pakai tanda kutip

e)

print harus diawali dengan END

24.

Masalah yang cocok diselesaikan dengan DP adalah yang memiliki...

a)

Solusi acak

b)

Greedy choice property

c)

Overlapping subproblems

d)

Tidak memerlukan memori

e)

Data sangat sedikit

25.

Rekursi tidak efektif digunakan jika...

a)

Masalah sederhana

b)

Basis kecil

c)

Kedalaman rekursi sangat besar

d)

Rekursi menggunakan parameter

e)

Fungsi memiliki satu return

26.

Mengapa DP lebih cepat daripada rekursi biasa pada Fibonacci?

a)

Karena memakai memori lebih kecil

b)

Menyimpan hasil submasalah sebelumnya

c)

Tidak memakai perulangan

d)

Mengubah fungsi menjadi iterative

e)

Memotong input

27.

Flowchart berbeda dari algoritma karena...

a)

Flowchart menggunakan simbol visual

b)

Flowchart hanya untuk matematika

c)

Algoritma tidak dapat dibaca manusia

d)

Flowchart tidak bisa bercabang

e)

Algoritma harus Digambar

28.

Ciri utama fungsi rekursif adalah...

a)

Selalu menggunakan perulangan

b)

Memanggil dirinya sendiri

c)

Tidak memiliki return

d)

Selalu menghasilkan error

e)

Tidak menggunakan parameter

29.

Dalam memilih paket internet terbaik, seseorang memilih paket dengan kuota terbesar per rupiah. Keputusan ini berdasarkan...

a)

DP optimization

b)

Fractional knapsack greedy

c)

Rekursi

d)

Full search

e)

Hashing

30.

Untuk menghitung jumlah cara menaiki tangga dengan n anak tangga, metode paling efisien adalah...

a)

Menguji semua kemungkinan

b)

Greedy

c)

Dynamic Programming (tabulasi)

d)

Binary search

e)

BFS

31.

Algoritma adalah ...

a)

Bahasa pemrograman

b)

Serangkaian instruksi logis dan terstruktur untuk menyelesaikan masalah

c)

Diagram sistem

d)

Bahasa mesin

e)

Urutan kode acak

32.

Simbol belah ketupat digunakan untuk ...

a)

Proses

b)

Output

c)

Keputusan

d)

Terminator

e)

Penghubung

33.

Rekursi vs iteratif untuk faktorial, mana lebih efisien?

a)

Rekursi selalu lebih cepat

b)

Iteratif tidak perlu stack

c)

Rekursi terbaik

d)

Sama saja

e)

Iteratif lebih lambat

34.

Tujuan utama flowchart adalah ...

a)

Menghias tampilan

b)

Menyederhanakan logika

c)

Menampilkan hasil

d)

Mengubah bahasa mesin

e)

Menyimpan data

35.

“Ulangi proses sampai nilai mencapai 10” adalah ...

a)

Percabangan

b)

Fungsi

c)

Perulangan

d)

Prosedur

e)

Array

36.

Ciri utama bahasa tingkat tinggi adalah ...

a)

Kode biner

b)

Sintaks mendekati bahasa manusia

c)

Hanya untuk mesin

d)

Tidak memerlukan compiler

e)

Tidak cocok untuk program besar

37.

Pada Waterfall, perubahan kebutuhan harus ...

a)

Dilanjut tanpa revisi

b)

Kembali ke analisis

c)

Tambah pengujian

d)

Perbaikan langsung

e)

Diabaikan

38.

Simbol oval digunakan untuk ...

a)

Input/Output

b)

Proses

c)

Keputusan

d)

Awal/Akhir

e)

Penghubung

39.

If–else digunakan untuk ...

a)

Looping

b)

Kondisi bercabang

c)

Perulangan tetap

d)

Rekursi

e)

Pemanggilan fungsi

40.

Greedy gagal optimal pada Knapsack karena ...

a)

Tidak mempertimbangkan kapasitas total

b)

Terlalu lambat

c)

Membutuhkan banyak memori

d)

Hanya untuk integer

e)

Mengabaikan nilai item

41.

Fungsi utama pseudocode adalah ...

a)

Menampilkan output

b)

Menulis kode akhir

c)

Menjelaskan logika sederhana

d)

Menghitung waktu

e)

Mengubah bahasa mesin

42.

Tahap dokumentasi kebutuhan adalah ...

a)

Analisis kebutuhan

b)

Desain

c)

Implementasi

d)

Pengujian

e)

Pemeliharaan

43.

Fibonacci rekursif menjadi lebih efisien jika ...

a)

Hapus rekursi

b)

Gunakan memoization

c)

Tambah pemanggilan fungsi

d)

Ganti bahasa

e)

Linear search

44.

Boolean terdiri dari ...

a)

1 dan 0

b)

True dan False

c)

A dan B

d)

3.14 dan 1.5

e)

5 dan 7

45.

Fungsi yang memanggil dirinya disebut ...

a)

Rekursi

b)

Iterasi

c)

Modular

d)

Dinamis

e)

Relasional

46.

Tujuan greedy adalah ...

a)

Memilih solusi lokal terbaik

b)

Mengurangi memori

c)

Menghapus duplikasi

d)

Random

e)

Perbesar input

47.

DP mengatasi tumpang tindih dengan ...

a)

Mengulang semua langkah

b)

Menyimpan hasil sebelumnya

c)

Fungsi tanpa parameter

48.

Langkah berurutan menunjukkan ...

a)

Acak

b)

Sebab-akibat

c)

Loop tanpa batas

d)

Henti tanpa hasil

e)

Urutan diabaikan

49.

Flowchart bermanfaat untuk ...

a)

Hemat hardware

b)

Debugging & planning

c)

Kurangi RAM

d)

Hilangkan error sintaks

e)

Hapus komentar

50.

Bahasa mesin terdiri dari ...

a)

ASCII

b)

0 dan 1

c)

Huruf kapital

d)

Inggris

e)

Tanda baca

51.

DP bottom-up berarti ...

a)

Satu variabel

b)

Dari besar ke kecil

c)

Dari kecil ke besar

d)

Tanpa array

e)

Rekursi jauh

52.

Langkah pertama Waterfall adalah ...

a)

Pengujian

b)

Analisis kebutuhan

c)

Desain

d)

Implementasi

e)

Pemeliharaan

53.

Simbol parallelogram digunakan untuk ...

a)

Proses

b)

Input/Output

c)

Keputusan

d)

Terminator

e)

Penghubung

54.

Iterasi berarti ...

a)

Sekali jalan

b)

Mengulang selama benar

c)

Tanpa kondisi

d)

Simpan data

e)

Input acak

55.

Keunggulan Merge Sort dibanding Bubble Sort adalah ...

a)

Lebih mudah dipahami

b)

Lebih efisien untuk data berukuran besar

c)

Tidak membutuhkan ruang tambahan

d)

Tidak menggunakan rekursi

e)

Hanya cocok untuk data kecil

56.

Tujuan utama pengujian perangkat lunak adalah ...

a)

Menghasilkan laporan keuangan

b)

Menemukan dan memperbaiki kesalahan

c)

Menghapus fungsi yang tidak perlu

d)

Membuat dokumentasi

e)

Mengubah kode sumber

57.

Studi kelayakan dilakukan untuk ...

a)

Melakukan implementasi

b)

Menilai kelayakan teknis dan ekonomi

c)

Menyusun desain sistem

d)

Melakukan pemeliharaan

e)

Menguji performa sistem

58.

Algoritma Greedy gagal optimal pada kasus penukaran koin jika ...

a)

Nilai koin tidak proporsional

b)

Dimulai dari koin kecil

c)

Input dianggap hilang

d)

Tidak menggunakan struktur kontrol

e)

Semua koin bernilai sama

59.

Sebuah fungsi rekursif berhenti apabila ...

a)

Tidak memiliki parameter

b)

Base case terpenuhi

c)

Fungsi dipanggil terus menerus

d)

Tidak memiliki nilai kembali

e)

Program dipaksa berhenti

60.

Local optimum adalah ...

a)

Solusi terbaik pada lingkup kecil, tidak menjamin global

b)

Solusi global tercepat

c)

Solusi paling akurat

d)

Selalu solusi terbaik

e)

Tahap awal dalam DP

61.

Flowchart membantu untuk ...

a)

Analisis hardware

b)

Memvisualisasikan logika program

c)

Menjalankan program

d)

Mengetes prosesor

e)

Menghapus data

62.

Output dari pseudocode berikut: FOR i = 1 TO 5 PRINT i adalah ...

a)

0 1 2 3 4 5

b)

1 2 3 4 5

c)

2 4 6 8 10

d)

1 3 5 7 9

e)

5 4 3 2 1

63.

Divide and Conquer lebih cepat dari pencarian linear karena ...

a)

Linear search lebih efisien

b)

Pembagian masalah mempercepat komputasi

c)

Waktu keduanya sama

d)

Linear search lebih hemat memori

e)

Hanya untuk tipe data string

64.

Input adalah ...

a)

Output

b)

Data yang dimasukkan

c)

Proses

d)

Struktur data

e)

Algoritma kompleks

65.

While digunakan untuk ...

a)

Menyimpan hasil

b)

Mengulang selama kondisi benar

c)

Mengakhiri rekursi

d)

Menjalankan satu kali saja

e)

Menampilkan keluaran

66.

Bahasa tingkat rendah memiliki karakteristik ...

a)

Mudah dipahami manusia

b)

Lebih dekat dengan mesin

c)

Berbasis objek

d)

Tidak perlu compiler

e)

Digunakan untuk desain UI

67.

Paradigma pemrograman imperatif menekankan ...

a)

Deskripsi hasil

b)

Urutan langkah instruksi

c)

Pembuktian formal

d)

Manipulasi objek

e)

Pola deklaratif

68.

Contoh bahasa yang mendukung OOP adalah ...

a)

HTML

b)

CSS

c)

Python

d)

SQL

e)

JSON

69.

Compiler berfungsi untuk ...

a)

Menjalankan perintah baris demi baris

b)

Menerjemahkan seluruh kode ke bahasa mesin sebelum dijalankan

c)

Hanya menjalankan kode Python

d)

Menyimpan file program

e)

Membuat dokumentasi

70.

Ciri bahasa pemrograman prosedural adalah ...

a)

Fokus pada objek

b)

Terdiri dari prosedur atau fungsi

c)

Tidak membutuhkan variabel

d)

Tidak memiliki alur kontrol

e)

Menggunakan AI

71.

Algoritma dengan kompleksitas O(n2)O(n^2) berarti ...

a)

Waktu tumbuh dua kali lipat

b)

Waktu tumbuh sebanding kuadrat ukuran input

c)

Waktu selalu konstan

d)

Tidak bergantung ukuran input

e)

Paling efisien

72.

Linear search lebih lambat dibanding binary search karena ...

a)

Linear search hanya untuk bilangan

b)

Linear search mengecek satu per satu

c)

Binary search tidak butuh sorting

d)

Binary search acak

e)

Linear search menggunakan tree

73.

Worst-case terjadi ketika ...

a)

Data sudah urut

b)

Data terbalik atau tidak ditemukan

c)

Data sedang

d)

Data kecil

e)

Input kosong

74.

Space complexity mengukur ...

a)

Waktu eksekusi

b)

Jumlah memori yang digunakan algoritma

c)

Jumlah input yang diterima

d)

Kecepatan CPU

e)

Jenis data yang digunakan

75.

Algoritma tercepat untuk mencari data pada array terurut besar adalah ...

a)

Linear search

b)

Binary search

c)

Bubble sort

d)

DFS

e)

BFS

76.

Reliabilitas perangkat lunak berarti

a)

Mudah digunakan

b)

Tidak mudah gagal

c)

Cepat

d)

Murah

e)

Aman

77.

Maintainability mengacu pada

a)

Kemudahan memodifikasi perangkat lunak

b)

Keamanan sistem

c)

Kecepatan program

d)

Kelengkapan fitur

e)

Harga perangkat

78.

Efisiensi perangkat lunak berkaitan dengan

a)

Kemudahan dipelajari

b)

Penggunaan sumber daya yang optimal

c)

Kompleksitas fitur

d)

Jumlah pengguna

e)

Tampilan antarmuka

79.

Perangkat lunak dianggap tidak aman jika

a)

Semua data terenkripsi

b)

Ada celah yang dapat dieksploitasi

c)

Memiliki UI yang buruk

d)

Tidak mendukung mobile

e)

Memiliki memori besar

80.

Usability suatu aplikasi ditentukan oleh

a)

Harga perangkat

b)

Kemudahan dan kenyamanan penggunaan

c)

Jumlah fitur

d)

Jumlah server

e)

Kecepatan koneksi internet