💜 Selalu gratis

Soalut.com tetap gratis karena kamu. Yuk, bantu kami terus hadir!💜 Selalu gratis

Soal UAS UT MSIM4203 Algoritma dan Pemrograman Beserta Kunci Jawaban

Aplikasi Gratis

Soalut.com
★★★★★ 5.0
Gratis
GET IT ON Google Play
Soal UAS UT MSIM4203 Algoritma dan Pemrograman Beserta Kunci Jawaban
Soal UT MSIM4203 Algoritma dan Pemrograman

Pulang kerja sambil buka modul java, eh malah bingung antara flowchart di Modul 2 sama struktur program java di Modul 4. Dua topik ini sering bikin mahasiswa UT pusing karena beda pendekatan visual dan teks. Padahal keduanya inti banget. Bank soal UT di sini langsung kasih contoh konkret perbedaan soal flowchart versus pseudocode.

Modul 5 tentang perulangan dan kondisi if itu favorit banyak dosen bikin soal UAS, karena logikanya bisa dikombinasi sama array di Modul 7. Jangan remehkan juga praktikum di Modul 6 yang nyelipin operator dan tipe data. Soal UT Sistem Informasi per modul ini bisa jadi latihan tepat sasaran. Coba kerjakan dulu bagian perulangan.

Soal UAS UT di bawah ini nyangkut inti setiap KB, dari pengantar algoritma sampai method dan eksepsi. Setiap soal dilengkapi kunci jawaban dan pembahasan, bukan cuma huruf A sampai E. Soal UAS Universitas Terbuka halaman ini sengaja kami susun biar kamu bisa auto-evaluasi selesai belajar MSIM4203 Algoritma dan Pemrograman. Kalau ada jawaban yang beda, langsung cek pembahasan dulu.

Soal UT MSIM4203 Algoritma dan Pemrograman

1.

Apa yang dimaksud dengan algoritma dalam pemrograman komputer?

  • A. Urutan langkah logis dan sistematis untuk memecahkan masalah
  • B. Kumpulan perangkat keras komputer
  • C. Bahasa pemrograman tingkat tinggi
  • D. Sistem operasi komputer
Jawaban: A
Algoritma adalah urutan langkah logis dan sistematis untuk memecahkan masalah, bukan perangkat keras atau sistem operasi.
2.

Siapa yang dikenal sebagai penemu konsep algoritma modern?

  • A. Al-Khawarizmi
  • B. Alan Turing
  • C. Charles Babbage
  • D. Ada Lovelace
Jawaban: A
Al-Khawarizmi adalah matematikawan Persia yang memperkenalkan konsep algoritma melalui karyanya tentang prosedur perhitungan.
3.

Manakah pernyataan yang benar tentang pemrograman komputer?

  • A. Pemrograman hanya membutuhkan perangkat lunak tanpa perangkat keras
  • B. Pemrograman hanya dilakukan oleh insinyur listrik
  • C. Pemrograman adalah proses menulis algoritma dalam bahasa yang dimengerti komputer
  • D. Pemrograman tidak memerlukan logika matematika
Jawaban: C
Pemrograman adalah proses menulis algoritma dalam bahasa pemrograman sehingga komputer dapat menjalankan instruksi.
4.

Apa fungsi utama dari algoritma dalam konteks pemecahan masalah?

  • A. Memberikan solusi langkah demi langkah untuk masalah yang diberikan
  • B. Menyimpan data secara permanen
  • C. Mempercantik tampilan program
  • D. Menghubungkan internet ke komputer
Jawaban: A
Algoritma berfungsi memberikan solusi langkah demi langkah yang jelas dan terstruktur untuk menyelesaikan masalah tertentu.
5.

Manakah contoh penerapan algoritma dalam kehidupan sehari-hari?

  • A. Mengganti wallpaper komputer
  • B. Memasak mie instan dengan langkah-langkah tertentu
  • C. Mendengarkan musik melalui radio
  • D. Mematikan komputer dengan paksa
Jawaban: B
Memasak mie instan mengikuti urutan langkah seperti merebus air, memasukkan mie, menambahkan bumbu, yang merupakan bentuk algoritma sederhana.
6.

Apa karakteristik utama dari algoritma yang baik?

  • A. Menggunakan bahasa yang sulit dipahami
  • B. Memiliki langkah yang ambigu
  • C. Tergantung pada data input yang tidak terbatas
  • D. Finis atau berhenti setelah sejumlah langkah tertentu
Jawaban: D
Algoritma yang baik harus memiliki finis atau berhenti setelah sejumlah langkah tertentu agar efektif dan efisien.
7.

Manakah yang termasuk struktur dasar algoritma?

  • A. Perulangan, percabangan, dan urutan
  • B. Variabel dan konstanta
  • C. Array dan string
  • D. Fungsi dan prosedur
Jawaban: A
Struktur dasar algoritma meliputi urutan (sequence), percabangan (selection), dan perulangan (iteration).
8.

Dalam struktur dasar algoritma, apa yang dimaksud dengan percabangan?

  • A. Pemilihan jalur eksekusi berdasarkan kondisi tertentu
  • B. Eksekusi instruksi secara berurutan
  • C. Pengulangan instruksi hingga kondisi terpenuhi
  • D. Penyimpanan data sementara
Jawaban: A
Percabangan memungkinkan pemilihan jalur eksekusi berdasarkan kondisi boolean yang telah ditentukan.
9.

Contoh struktur perulangan dalam algoritma adalah:

  • A. if-then-else
  • B. for dan while
  • C. switch-case
  • D. input-output
Jawaban: B
Perulangan menggunakan for dan while untuk mengulang instruksi selama atau hingga kondisi tertentu terpenuhi.
10.

Dalam algoritma, apa fungsi dari simbol untuk proses pada flowchart?

  • A. Menandakan awal atau akhir program
  • B. Menampilkan input atau output data
  • C. Menentukan keputusan berdasarkan kondisi
  • D. Melakukan operasi atau perhitungan
Jawaban: D
Simbol proses pada flowchart digunakan untuk menunjukkan operasi atau perhitungan yang dilakukan oleh program.
11.

Simbol flowchart yang berbentuk belah ketupat digunakan untuk:

  • A. Menandakan awal program
  • B. Menampilkan output
  • C. Menyambungkan flowchart antar halaman
  • D. Menentukan kondisi atau keputusan
Jawaban: D
Simbol belah ketupat digunakan untuk percabangan atau pengambilan keputusan berdasarkan kondisi tertentu.
12.

Apa perbedaan utama antara flowchart dan pseudocode?

  • A. Flowchart menggunakan bahasa alami, pseudocode menggunakan simbol
  • B. Flowchart menggunakan simbol grafis, pseudocode menggunakan teks deskriptif
  • C. Flowchart tidak dapat digunakan untuk algoritma kompleks
  • D. Pseudocode lebih sulit dipahami daripada flowchart
Jawaban: B
Flowchart menggunakan simbol grafis untuk menggambarkan alur, sedangkan pseudocode menggunakan teks deskriptif seperti bahasa manusia.
13.

Dalam flowchart, simbol lingkaran atau elips digunakan untuk:

  • A. Menandakan input data
  • B. Menandakan proses perhitungan
  • C. Menandakan awal atau akhir program
  • D. Menandakan keputusan
Jawaban: C
Simbol elips dalam flowchart digunakan untuk menandai start dan end dari program.
14.

Apa arti dari simbol persegi panjang dalam flowchart?

  • A. Konektor antar halaman
  • B. Input atau output data
  • C. Proses atau langkah perhitungan
  • D. Keputusan logika
Jawaban: C
Simbol persegi panjang mewakili proses atau langkah perhitungan dalam flowchart.
15.

Dalam flowchart, simbol jajar genjang digunakan untuk:

  • A. Menandakan awal program
  • B. Menandakan proses perulangan
  • C. Menandakan keputusan
  • D. Menandakan input atau output data
Jawaban: D
Simbol jajar genjang dalam flowchart digunakan untuk merepresentasikan input dan output data.
16.

Manakah pernyataan yang benar tentang flowchart?

  • A. Flowchart hanya bisa digambar di atas kertas
  • B. Flowchart membantu memvisualisasikan aliran logika algoritma
  • C. Flowchart tidak memerlukan simbol standar
  • D. Flowchart hanya digunakan untuk bahasa pemrograman Java
Jawaban: B
Flowchart membantu memvisualisasikan aliran logika algoritma sehingga memudahkan pemahaman dan pengembangan program.
17.

Apa yang digunakan untuk menghubungkan flowchart yang terputus ke halaman lain?

  • A. Simbol segitiga
  • B. Simbol belah ketupat
  • C. Simbol konektor berbentuk lingkaran kecil
  • D. Simbol persegi panjang
Jawaban: C
Simbol konektor berbentuk lingkaran kecil digunakan untuk menyambungkan flowchart yang terputus antar halaman.
18.

Simbol mana yang digunakan dalam flowchart untuk menyatakan proses atau operasi yang dilakukan oleh program?

  • A. Terminator
  • B. Process
  • C. Decision
  • D. Input/Output
Jawaban: B
Simbol Process berbentuk persegi panjang dan digunakan untuk menunjukkan suatu tindakan atau operasi.
19.

Apa fungsi dari simbol Decision dalam flowchart?

  • A. Memulai atau mengakhiri program
  • B. Menampilkan hasil ke layar
  • C. Memeriksa kondisi logika untuk menentukan alur
  • D. Melakukan perulangan
Jawaban: C
Simbol Decision (berbentuk belah ketupat) digunakan untuk pengambilan keputusan berdasarkan kondisi benar atau salah.
20.

Dalam pseudocode, perintah yang digunakan untuk menampilkan teks ke layar adalah?

  • A. INPUT
  • B. READ
  • C. OUTPUT
  • D. DISPLAY
Jawaban: C
Dalam pseudocode, OUTPUT digunakan untuk menampilkan data ke layar.
21.

Manakah penulisan pseudocode yang tepat untuk membaca input dari pengguna?

  • A. OUTPUT 'Masukkan angka'
  • B. INPUT x
  • C. DISPLAY x
  • D. READY x
Jawaban: B
INPUT digunakan dalam pseudocode untuk menerima masukan dari pengguna dan menyimpannya ke variabel.
22.

Dalam pseudocode, pernyataan IF … THEN … ELSE digunakan untuk?

  • A. Perulangan
  • B. Inisialisasi variabel
  • C. Percabangan
  • D. Deklarasi fungsi
Jawaban: C
Struktur IF … THEN … ELSE adalah bentuk percabangan yang mengeksekusi kode berdasarkan kondisi tertentu.
23.

Apa notasi yang benar dalam pseudocode untuk menyatakan perulangan dengan jumlah iterasi yang diketahui?

  • A. FOR i = 1 TO n DO … ENDFOR
  • B. REPEAT … UNTIL (kondisi)
  • C. WHILE (kondisi) DO … ENDWHILE
  • D. LOOP … ENDLOOP
Jawaban: A
FOR digunakan ketika jumlah perulangan sudah diketahui, seperti dari 1 hingga n.
24.

Bagaimana cara mendeklarasikan array dalam pseudocode?

  • A. namaArray = array[n]
  • B. ARRAY namaArray[n]
  • C. DEKLARASI namaArray : array[n]
  • D. int namaArray[n]
Jawaban: B
Dalam pseudocode, deklarasi array biasanya ditulis sebagai ARRAY namaArray[n] untuk menyimpan n elemen.
25.

Dalam pseudocode, operator yang digunakan untuk perbandingan 'tidak sama dengan' adalah?

  • A. <>
  • B. !=
  • C. ==
  • D. =
Jawaban: A
Dalam pseudocode, '<>' adalah operator untuk tidak sama dengan, berbeda dengan Java yang menggunakan '!='.
26.

Apa fungsi dari tool 'Draw' dalam draw.io saat membuat flowchart?

  • A. Menggambar garis panah
  • B. Membuat bentuk geometri baru
  • C. Menambahkan teks bebas
  • D. Menghubungkan simbol
Jawaban: B
Tool 'Draw' di draw.io digunakan untuk membuat bentuk geometri seperti lingkaran atau persegi secara manual.
27.

Langkah pertama saat membuat flowchart di draw.io adalah?

  • A. Menambahkan simbol Start
  • B. Memilih template
  • C. Menyimpan file
  • D. Mengatur konektor
Jawaban: A
Dalam membuat flowchart, simbol Start adalah elemen pertama yang harus ditambahkan sebagai titik awal.
28.

Bagaimana cara menghubungkan dua simbol dalam draw.io?

  • A. Klik simbol lalu pilih Connect
  • B. Ketik tanda panah di keyboard
  • C. Gunakan tool Line atau drag konektor dari titik sambung
  • D. Pilih menu Insert > Arrow
Jawaban: C
Di draw.io, kita menarik konektor dari titik sambung (panah hijau) ke simbol lain untuk membuat hubungan.
29.

Apa fungsi dari IDE Eclipse dalam pemrograman Java?

  • A. Mengedit dan mengompilasi kode program
  • B. Menjalankan browser
  • C. Merancang flowchart
  • D. Membuat database
Jawaban: A
Eclipse adalah IDE yang digunakan untuk menulis, mengompilasi, dan menjalankan kode Java.
30.

Setelah menulis kode Java di Eclipse, langkah selanjutnya untuk menjalankan program adalah?

  • A. Klik Build > Compile
  • B. Klik Save dan tekan F5
  • C. Pilih Debug > Start
  • D. Klik Run atau tekan Ctrl + F11
Jawaban: D
Untuk menjalankan program di Eclipse, kita cukup klik tombol Run atau tekan Ctrl + F11.
31.

File yang dihasilkan setelah kompilasi program Java berekstensi?

  • A. .class
  • B. .java
  • C. .exe
  • D. .jar
Jawaban: A
Hasil kompilasi kode Java adalah file bytecode dengan ekstensi .class.
32.

Java adalah bahasa pemrograman yang bersifat?

  • A. Terstruktur
  • B. Prosedural
  • C. Fungsional
  • D. Berorientasi objek
Jawaban: D
Java adalah bahasa pemrograman berorientasi objek (OOP) yang mendukung enkapsulasi, pewarisan, dan polimorfisme.
33.

Apa komponen utama yang harus ada dalam setiap program Java?

  • A. Package
  • B. Constructor
  • C. Library
  • D. Method main
Jawaban: D
Method main adalah titik masuk utama program Java, yang ditulis sebagai public static void main(String[] args).
34.

Manakah pernyataan yang benar tentang Java?

  • A. Java hanya bisa berjalan di Windows
  • B. Java tidak memerlukan compiler
  • C. Java menggunakan interpreter langsung
  • D. Java adalah platform independent karena menggunakan JVM
Jawaban: D
Java bersifat platform independent karena kode dikompilasi menjadi bytecode yang dijalankan di JVM, sehingga bisa berjalan di berbagai sistem operasi.
35.

Apa yang dimaksud dengan Java dalam konteks pemrograman?

  • A. Bahasa pemrograman tingkat rendah
  • B. Perangkat keras komputer
  • C. Sistem operasi
  • D. Bahasa pemrograman berorientasi objek
Jawaban: D
Java adalah bahasa pemrograman berorientasi objek yang populer untuk pengembangan aplikasi.
36.

Dalam struktur program Java, bagian mana yang berfungsi sebagai titik awal eksekusi program?

  • A. Method main
  • B. Class utama
  • C. Package
  • D. Import statement
Jawaban: A
Method main adalah method yang pertama kali dijalankan saat program dieksekusi.
37.

Perhatikan kode berikut: public class Contoh { }. Kata kunci 'public' pada deklarasi class menunjukkan bahwa class tersebut memiliki akses?

  • A. Terbatas hanya dalam package yang sama
  • B. Hanya untuk kelas turunan
  • C. Bebas diakses dari kelas mana pun
  • D. Tidak dapat diakses sama sekali
Jawaban: C
Public adalah modifier akses yang memungkinkan kelas diakses dari mana pun.
38.

Dalam sebuah program Java, pernyataan digunakan untuk mengimpor kelas dari package lain?

  • A. import
  • B. package
  • C. include
  • D. using
Jawaban: A
Pernyataan import digunakan untuk mengimpor kelas dari package lain ke dalam program.
39.

Perhatikan kode berikut: System.out.println("Halo");. Apa fungsi dari objek 'out' dalam statement tersebut?

  • A. Membaca input dari keyboard
  • B. Mencetak output ke konsol
  • C. Menulis ke file
  • D. Mengirim data ke jaringan
Jawaban: B
Out adalah objek PrintStream yang digunakan untuk mencetak output ke konsol.
40.

Apa yang dimaksud dengan block komentar dalam Java?

  • A. Komentar yang diawali /* dan diakhiri */
  • B. Komentar yang diawali //
  • C. Komentar yang diawali #
  • D. Komentar yang diawali <!– dan diakhiri –>
Jawaban: A
Block komentar di Java diawali dengan /* dan diakhiri dengan */.
41.

Tipe data manakah yang digunakan untuk menyimpan nilai bilangan bulat dalam Java?

  • A. char
  • B. double
  • C. int
  • D. boolean
Jawaban: C
Tipe data int digunakan untuk menyimpan bilangan bulat.
42.

Variabel dengan tipe data double digunakan untuk menyimpan?

  • A. Bilangan bulat
  • B. Bilangan desimal
  • C. Karakter
  • D. Nilai boolean
Jawaban: B
Tipe data double digunakan untuk menyimpan bilangan desimal.
43.

Perhatikan kode: char huruf = 'A';. Berapa ukuran memori yang digunakan oleh variabel huruf?

  • A. 1 byte
  • B. 8 byte
  • C. 4 byte
  • D. 2 byte
Jawaban: D
Tipe data char di Java menggunakan 2 byte karena menggunakan Unicode.
44.

Manakah dari berikut ini yang merupakan cara mendeklarasikan variabel boolean?

  • A. boolean status = true;
  • B. boolean status = "true";
  • C. boolean status = 1;
  • D. boolean status = 'true';
Jawaban: A
Variabel boolean hanya dapat diberi nilai true atau false.
45.

Apa yang terjadi jika kita mencoba menyimpan nilai 3.14 ke dalam variabel bertipe int?

  • A. Nilai disimpan sebagai 3
  • B. Nilai disimpan sebagai 3.14
  • C. Terjadi error kompilasi
  • D. Nilai disimpan sebagai 4
Jawaban: C
Tipe int tidak dapat menyimpan nilai desimal sehingga terjadi error kompilasi.
46.

Operator yang digunakan untuk penjumlahan dalam Java adalah?

  • A.
  • B. +
  • C. *
  • D. /
Jawaban: B
Operator + digunakan untuk operasi penjumlahan.
47.

Apa hasil dari ekspresi 10 % 3 dalam Java?

  • A. 0
  • B. 2
  • C. 3
  • D. 1
Jawaban: D
Operator % menghasilkan sisa bagi, 10 dibagi 3 sisa 1.
48.

Operator logika AND dalam Java ditulis dengan?

  • A. !
  • B. ||
  • C. &&
  • D. &
Jawaban: C
Operator && digunakan untuk logika AND.
49.

Apa hasil dari ekspresi (5 > 3) && (2 < 4)?

  • A. null
  • B. false
  • C. error
  • D. true
Jawaban: D
Kedua kondisi bernilai true sehingga hasil AND adalah true.
50.

Operator increment ++ digunakan untuk?

  • A. Menambah nilai variabel sebesar 1
  • B. Mengurangi nilai variabel sebesar 1
  • C. Mengalikan nilai variabel dengan 2
  • D. Membagi nilai variabel dengan 2
Jawaban: A
Operator ++ menambah nilai variabel sebesar 1.
51.

Perulangan for dalam Java digunakan untuk?

  • A. Mengulang tanpa batas
  • B. Mengulang sejumlah iterasi yang diketahui
  • C. Mengulang berdasarkan kondisi
  • D. Mengulang sekali saja
Jawaban: B
Perulangan for digunakan ketika jumlah iterasi sudah diketahui sebelumnya.
52.

Perhatikan kode berikut: for (int i = 1; i <= 5; i++) { System.out.print(i + " "); } Apa output dari kode tersebut?

  • A. 0 1 2 3 4
  • B. 1 2 3 4 5
  • C. 1 2 3 4
  • D. 2 3 4 5
Jawaban: B
Perulangan for dijalankan dengan i dari 1 sampai 5, mencetak i dan spasi, sehingga output yang dihasilkan adalah 1 2 3 4 5.
53.

Perhatikan kode berikut: int i = 1; while (i <= 3) { System.out.print(i); i++; } Apa output dari kode tersebut?

  • A. 123
  • B. 1234
  • C. 12
  • D. 1
Jawaban: A
Perulangan while dimulai dengan i=1, kondisi i<=3 benar, cetak i, lalu i++ hingga i=4 berhenti, output 123.
54.

Perhatikan kode berikut: int i = 5; do { System.out.print(i + " "); i–; } while (i > 2); Apa output dari kode tersebut?

  • A. 5 4 3 2
  • B. 5 4 3
  • C. 4 3 2
  • D. 5 4
Jawaban: B
Perulangan do-while menjalankan blok minimal sekali, i=5 dan i– hingga i=3, berhenti saat i=2, output 5 4 3.
55.

Perhatikan kode berikut: for (int i = 0; i < 3; i++) { for (int j = 0; j < 2; j++) { System.out.print("*"); } } Berapa banyak bintang yang dicetak?

  • A. 2
  • B. 5
  • C. 3
  • D. 6
Jawaban: D
Perulangan luar 3 kali, dalam 2 kali, total 3×2=6 bintang.
56.

Perhatikan kode berikut: int x = 5; if (x > 3) { System.out.println("Besar"); } else { System.out.println("Kecil"); } Apa output dari kode tersebut?

  • A. Error kompilasi
  • B. Kecil
  • C. Tidak ada output
  • D. Besar
Jawaban: D
Kondisi x>3 benar, maka blok if dieksekusi mencetak Besar.
57.

Perhatikan kode berikut: int nilai = 75; if (nilai >= 80) { System.out.println("A"); } else if (nilai >= 70) { System.out.println("B"); } else if (nilai >= 60) { System.out.println("C"); } else { System.out.println("D"); } Apa output dari kode tersebut?

  • A. B
  • B. A
  • C. C
  • D. D
Jawaban: A
Nilai 75 tidak >=80, tetapi >=70, sehingga mencetak B.
58.

Perhatikan kode berikut: int a = 10; int b = 20; if (a > b) { System.out.println("a lebih besar"); } else if (a == b) { System.out.println("sama"); } else { System.out.println("a lebih kecil"); } Apa output dari kode tersebut?

  • A. a lebih kecil
  • B. a lebih besar
  • C. sama
  • D. tidak ada yang sesuai
Jawaban: A
Kondisi a>b salah, a==b salah, maka else dieksekusi mencetak a lebih kecil.
59.

Perhatikan kode berikut: boolean isRainy = true; if (isRainy) { System.out.println("Bawa payung"); } else { System.out.println("Tidak perlu payung"); } Apa output dari kode tersebut?

  • A. Error kompilasi
  • B. Tidak perlu payung
  • C. Tidak ada output
  • D. Bawa payung
Jawaban: D
Nilai isRainy true, maka kondisi if terpenuhi, mencetak Bawa payung.
60.

Perhatikan kode berikut: int x = 7; if (x % 2 == 0) { System.out.println("Genap"); } else { System.out.println("Ganjil"); } Apa output dari kode tersebut?

  • A. Error kompilasi
  • B. Genap
  • C. Tidak ada output
  • D. Ganjil
Jawaban: D
7%2=1, tidak sama dengan 0, maka else dieksekusi mencetak Ganjil.
61.

Perhatikan kode berikut: String nama = "Java"; if (nama.equals("Java")) { System.out.println("Benar"); } else { System.out.println("Salah"); } Apa output dari kode tersebut?

  • A. Tidak ada output
  • B. Salah
  • C. Benar
  • D. Error kompilasi
Jawaban: C
Nama sama dengan Java, maka kondisi benar, mencetak Benar.
62.

Perhatikan kode berikut: int a = 3; int b = 5; int hasil = a + b * 2; System.out.println(hasil); Apa output dari kode tersebut?

  • A. 16
  • B. 13
  • C. 10
  • D. 8
Jawaban: B
Operator *, dikerjakan lebih dulu dari +, sehingga b*2=10, lalu a+10=13.
63.

Perhatikan kode berikut: int x = 10; x += 5; System.out.println(x); Apa output dari kode tersebut?

  • A. 5
  • B. 10
  • C. 15
  • D. 20
Jawaban: C
Operator += menambah x dari 10 menjadi 15, lalu cetak 15.
64.

Perhatikan kode berikut: String s = "Halo"; System.out.println(s.length()); Apa output dari kode tersebut?

  • A. 5
  • B. 4
  • C. 3
  • D. 2
Jawaban: B
String Halo memiliki 4 karakter, length() mengembalikan 4.
65.

Perhatikan kode berikut: int[] arr = {2, 4, 6, 8}; System.out.println(arr[2]); Apa output dari kode tersebut?

  • A. 2
  • B. 4
  • C. 6
  • D. 8
Jawaban: C
Indeks array dimulai dari 0, arr[2] adalah elemen ketiga yaitu 6.
66.

Perhatikan kode berikut: int[] nums = {1, 2, 3}; for (int i = 0; i < nums.length; i++) { System.out.print(nums[i]); } Apa output dari kode tersebut?

  • A. 123
  • B. 012
  • C. 321
  • D. 0
Jawaban: A
Perulangan i dari 0 sampai 2, mencetak nums[0]=1, nums[1]=2, nums[2]=3, output 123.
67.

Perhatikan kode berikut: int[] data = {5, 10, 15}; int total = 0; for (int nilai : data) { total += nilai; } System.out.println(total); Apa output dari kode tersebut?

  • A. 0
  • B. 15
  • C. 30
  • D. 25
Jawaban: C
Perulangan for-each menjumlahkan 5+10+15=30, cetak 30.
68.

Perhatikan kode berikut: int[] arr = new int[3]; arr[0] = 7; arr[1] = 8; arr[2] = 9; System.out.println(arr[0] + arr[2]); Apa output dari kode tersebut?

  • A. 16
  • B. 17
  • C. 15
  • D. 7
Jawaban: A
arr[0]=7, arr[2]=9, jumlahnya 16.
69.

Deklarasi array satu dimensi untuk menyimpan 5 bilangan bulat dalam Java yang benar adalah…

  • A. int[] angka = new int[5];
  • B. int angka = new int[5];
  • C. int angka[] = new int;
  • D. array int angka = new int[5];
Jawaban: A
Dalam Java, deklarasi array int[] angka = new int[5] mendefinisikan array dengan 5 elemen bertipe int. Opsi lain salah karena tidak menggunakan kurung siku atau kurang dalam ukuran.
70.

Indeks array dalam Java dimulai dari…

  • A. 1
  • B. 0
  • C. -1
  • D. tergantung deklarasi
Jawaban: B
Indeks array di Java selalu dimulai dari 0, sehingga elemen pertama diakses dengan indeks 0.
71.

Method dalam Java yang tidak mengembalikan nilai memiliki tipe kembalian…

  • A. int
  • B. void
  • C. String
  • D. boolean
Jawaban: B
Method yang tidak mengembalikan nilai dideklarasikan dengan tipe kembalian void, yang berarti tidak ada nilai yang dikembalikan.
72.

Jika sebuah method memiliki parameter, maka saat pemanggilan method, argumen yang diberikan harus sesuai dengan…

  • A. nama parameter
  • B. tipe data parameter
  • C. jumlah dan tipe data parameter
  • D. nama variabel parameter
Jawaban: C
Argumen yang diberikan saat memanggil method harus cocok dalam jumlah dan tipe data dengan parameter yang didefinisikan.
73.

Kata kunci untuk mengembalikan nilai dari suatu method adalah…

  • A. return
  • B. void
  • C. break
  • D. continue
Jawaban: A
Kata kunci return digunakan untuk mengembalikan nilai dari method ke pemanggilnya.
74.

Method yang dapat dipanggil tanpa membuat objek dari kelas disebut…

  • A. method void
  • B. method static
  • C. method private
  • D. method konstruktor
Jawaban: B
Method static dapat dipanggil langsung melalui nama kelas tanpa perlu membuat objek terlebih dahulu.
75.

Overloading method terjadi ketika…

  • A. dua method memiliki nama sama dan parameter berbeda
  • B. dua method memiliki nama dan parameter sama
  • C. method dipanggil secara rekursif
  • D. method mengembalikan tipe data berbeda
Jawaban: A
Overloading adalah teknik memiliki beberapa method dengan nama yang sama tetapi parameter (tipe, jumlah, atau urutan) yang berbeda.
76.

Blok try-catch digunakan untuk…

  • A. mendefinisikan method
  • B. menangani eksepsi
  • C. mendeklarasikan array
  • D. mengulang pernyataan
Jawaban: B
Blok try-catch menangani eksepsi saat runtime dengan menjalankan kode dalam blok try dan menangkap kesalahan pada blok catch.
77.

Eksepsi yang terjadi karena pembagian bilangan bulat dengan nol adalah…

  • A. NullPointerException
  • B. ArrayIndexOutOfBoundsException
  • C. ArithmeticException
  • D. IOException
Jawaban: C
ArithmeticException terjadi pada operasi aritmetika ilegal, seperti pembagian bilangan bulat dengan nol.
78.

Pernyataan yang digunakan untuk melemparkan eksepsi secara eksplisit adalah…

  • A. try
  • B. catch
  • C. throw
  • D. throws
Jawaban: C
Kata kunci throw digunakan untuk melemparkan eksepsi secara manual dalam blok kode.
79.

Jika suatu method dapat melemparkan eksepsi, deklarasi method harus menyertakan…

  • A. try
  • B. catch
  • C. finally
  • D. throws
Jawaban: D
Kata kunci throws diletakkan setelah parameter method untuk mendeklarasikan eksepsi yang mungkin dilemparkan.
80.

Blok finally akan selalu dijalankan…

  • A. hanya jika terjadi eksepsi
  • B. hanya jika tidak ada eksepsi
  • C. terlepas dari ada atau tidaknya eksepsi
  • D. hanya jika ada return di try atau catch
Jawaban: C
Blok finally dieksekusi setelah blok try-catch selesai, baik terjadi eksepsi maupun tidak.
81.

Metode yang digunakan untuk mendapatkan panjang dari objek String adalah…

  • A. size()
  • B. length()
  • C. getSize()
  • D. len()
Jawaban: B
Kelas String di Java memiliki metode length() yang mengembalikan jumlah karakter dalam string.
82.

Untuk menggabungkan dua string dalam Java, operator yang tepat adalah…

  • A. +
  • B. &
  • C. concat()
  • D. append()
Jawaban: A
Operator + digunakan untuk concatenation string di Java, atau bisa juga menggunakan metode concat().
83.

Kelas StringBuffer di Java bersifat…

  • A. immutable
  • B. mutable
  • C. final
  • D. abstract
Jawaban: B
StringBuffer adalah mutable, artinya nilai objeknya dapat diubah tanpa membuat objek baru, berbeda dengan String yang immutable.
84.

Metode dari kelas Math untuk menghasilkan nilai maksimum dari dua angka adalah…

  • A. max()
  • B. min()
  • C. abs()
  • D. pow()
Jawaban: A
Kelas Math memiliki metode max() yang mengembalikan nilai terbesar dari dua argumen yang diberikan.
85.

Untuk menggabungkan dua objek String menjadi satu, method apa yang paling tepat digunakan di Java?

  • A. append()
  • B. concat()
  • C. merge()
  • D. join()
Jawaban: B
Method concat() digunakan untuk menggabungkan dua string menjadi satu string baru tanpa mengubah string asli.
86.

Dalam pemrograman Java, objek StringBuffer dibuat dengan tujuan utama agar?

  • A. Dapat diubah ukurannya secara otomatis
  • B. Dapat menyimpan karakter lebih cepat
  • C. Dapat diakses secara acak
  • D. Dapat diubah isinya tanpa membuat objek baru
Jawaban: D
StringBuffer bersifat mutable sehingga isinya dapat diubah langsung tanpa menciptakan objek baru, berbeda dengan String yang immutable.
87.

Method apakah yang digunakan untuk menambahkan string ke akhir objek StringBuffer di Java?

  • A. insert()
  • B. append()
  • C. add()
  • D. concat()
Jawaban: B
Method append() pada StringBuffer digunakan untuk menambahkan string atau data lain ke akhir buffer yang ada.
88.

Apa fungsi method delete(int start, int end) pada kelas StringBuffer?

  • A. Menghapus karakter dari indeks start hingga sebelum end
  • B. Menghapus semua karakter dari buffer
  • C. Menghapus karakter dari indeks start hingga end termasuk end
  • D. Menghapus karakter hanya pada indeks start
Jawaban: A
Method delete menghapus karakter mulai dari indeks start hingga sebelum indeks end, tanpa menyertakan karakter pada indeks end.
89.

Perhatikan kode berikut: StringBuffer sb = new StringBuffer("UT"); sb.append(" Buka").append(" Akses"); System.out.println(sb); Output yang dihasilkan adalah?

  • A. UT Buka
  • B. Buka Akses
  • C. UTBukaAkses
  • D. UT Buka Akses
Jawaban: D
Pemanggilan append secara berantai akan menambahkan string satu per satu, sehingga hasilnya adalah "UT Buka Akses".
90.

Method apa pada StringBuffer yang berfungsi untuk menyisipkan string pada posisi tertentu?

  • A. insert()
  • B. setCharAt()
  • C. append()
  • D. replace()
Jawaban: A
Method insert() pada StringBuffer digunakan untuk menyisipkan data pada indeks yang ditentukan tanpa menghapus data yang ada.
91.

Kelas Math dalam Java menyediakan method untuk menghitung nilai mutlak. Method yang tepat adalah?

  • A. abs()
  • B. floor()
  • C. ceil()
  • D. round()
Jawaban: A
Method abs() pada kelas Math mengembalikan nilai absolut atau mutlak dari suatu bilangan.
92.

Untuk membulatkan bilangan 4.7 ke atas menjadi 5, method Math yang digunakan adalah?

  • A. round(4.7)
  • B. floor(4.7)
  • C. ceil(4.7)
  • D. rint(4.7)
Jawaban: C
Math.ceil() membulatkan bilangan ke atas menuju bilangan bulat terdekat yang lebih besar, sehingga 4.7 menjadi 5.
93.

Method Math.sqrt(25) akan menghasilkan nilai?

  • A. 12.5
  • B. 5
  • C. 5.0
  • D. 25
Jawaban: C
Math.sqrt() mengembalikan akar kuadrat dalam tipe double, sehingga hasilnya adalah 5.0.
94.

Untuk menghasilkan bilangan acak antara 0.0 dan 1.0, method dari kelas Math yang digunakan adalah?

  • A. Math.round()
  • B. Math.random()
  • C. Math.abs()
  • D. Math.pow()
Jawaban: B
Math.random() mengembalikan bilangan acak bertipe double dalam rentang 0.0 hingga kurang dari 1.0.
95.

Berapakah hasil dari Math.pow(2, 3)?

  • A. 6
  • B. 8
  • C. 9
  • D. 5
Jawaban: B
Math.pow(2, 3) menghitung 2 pangkat 3, yaitu 2^3 yang sama dengan 8.
96.

Dalam praktikum membuat program Java, langkah pertama yang harus dilakukan adalah?

  • A. Menulis kode program
  • B. Mengompilasi program
  • C. Membuat flowchart terlebih dahulu
  • D. Menjalankan program
Jawaban: C
Dalam praktikum, algoritma direpresentasikan dalam flowchart sebelum diimplementasikan ke dalam kode program.
97.

Deklarasi array int[] nilai = new int[5]; akan mengalokasikan memori untuk berapa elemen?

  • A. 4
  • B. 10
  • C. 6
  • D. 5
Jawaban: D
Angka dalam kurung siku menunjukkan jumlah elemen array, sehingga int[5] berarti array dengan 5 elemen.
98.

Method dalam Java yang tidak mengembalikan nilai memiliki tipe data?

  • A. int
  • B. boolean
  • C. String
  • D. void
Jawaban: D
Method dengan tipe void tidak mengembalikan nilai apapun setelah dieksekusi.
99.

Blok try-catch digunakan untuk menangani apa dalam pemrograman Java?

  • A. Eksepsi atau exception
  • B. Kesalahan sintaks
  • C. Looping tak terbatas
  • D. Deklarasi variabel
Jawaban: A
Blok try-catch digunakan untuk menangani eksepsi yang mungkin terjadi selama eksekusi program.
100.

Dalam membuat program Java, setelah menulis kode langkah berikutnya adalah?

  • A. Menjalankan program
  • B. Membuat flowchart
  • C. Mengompilasi kode
  • D. Mendebug program
Jawaban: C
Setelah menulis kode, kode harus dikompilasi terlebih dahulu menjadi bytecode sebelum dapat dijalankan oleh JVM.

Bagian flowchart dan pseudocode di Modul 2 sering jadi jebakan di UAS karena bentuknya beda dari soal biasa. Soal tipe UO biasanya menyuruh kamu menulis ulang algoritma ke bentuk lain, bukan cuma milih jawaban. Kalau sudah hafal struktur perulangan dan kondisinya, itu sih aman. Pastikan kamu juga rajin latihan bikin flowchart di draw.io biar matanya terbiasa dengan notasi-notasi yang dipakai.

Kalau soal MSIM4203 Algoritma dan Pemrograman tipe UTM lebih ke hafalan sintaks Java dan output program sederhana. Biasanya array dan method di Modul 7 keluar sebagai soal UO yang butuh pemahaman logika, bukan sekedar ngapalin. Ada banyak Soal UAS UT lain di sini kalau kamu mau lanjut latihan matkul yang beda. Yang penting sih jangan cuma baca, langsung praktik kodenya di Eclipse.

Bagikan

error: Content is protected !!