Contoh Soal

50 Contoh Soal Kelas 12 SMK Dasar Pemrograman

50 Contoh Soal Kelas 12 SMK Dasar Pemrograman
50 Contoh Soal Kelas 12 SMK Dasar Pemrograman

50 Contoh Soal Kelas 12 SMK Dasar Pemrograman – Berikut adalah 50 contoh soal pilihan ganda beserta jawabannya untuk mata pelajaran Dasar Pemrograman kelas 12 SMK:

1. Apa yang dimaksud dengan variabel dalam pemrograman?
a. Tempat untuk menyimpan nilai
b. Alat untuk mengatur alur program
c. Fungsi untuk memasukkan data
d. Perintah untuk menghentikan program
e. Alat untuk menampilkan hasil program

Jawaban: a. Tempat untuk menyimpan nilai

2. Dalam bahasa pemrograman C++, tipe data yang digunakan untuk menyimpan angka desimal adalah…
a. int
b. char
c. float
d. string
e. bool

Jawaban: c. float

3. Apa output dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 5, y = 3;
cout << x + y;
return 0;
}
a. 5
b. 8
c. 15
d. Error
e. 53

Jawaban: b. 8

4. Fungsi yang digunakan untuk mencetak output di C++ adalah…
a. input()
b. scanf()
c. print()
d. cout()
e. println()

Jawaban: d. cout()

5. Apa yang terjadi jika sebuah variabel tidak dideklarasikan sebelum digunakan dalam program?
a. Program akan berjalan normal
b. Program akan menghasilkan error
c. Program akan meminta input
d. Program akan memberikan hasil acak
e. Program akan berhenti

Jawaban: b. Program akan menghasilkan error

6. Apa itu “loop” dalam pemrograman?
a. Proses untuk mengambil input
b. Proses untuk menampilkan output
c. Struktur kontrol untuk mengulang suatu perintah
d. Struktur untuk mendeklarasikan variabel
e. Proses untuk mengakhiri program

Jawaban: c. Struktur kontrol untuk mengulang suatu perintah

7. Apa yang dimaksud dengan “array” dalam pemrograman?
a. Sekumpulan variabel yang bertipe data sama
b. Sekumpulan perintah dalam fungsi
c. Fungsi untuk menyimpan nilai sementara
d. Struktur untuk menginput data
e. Sekumpulan nilai yang berbeda tipe data

Jawaban: a. Sekumpulan variabel yang bertipe data sama

8. Dalam C++, perintah untuk mendeklarasikan fungsi main adalah…
a. void main()
b. int main()
c. function main()
d. program main()
e. main() void

Jawaban: b. int main()

9. Apa hasil dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 5;
if (x > 3) {
cout << “True”;
} else {
cout << “False”;
}
return 0;
}
a. True
b. False
c. Error
d. Tidak ada output
e. True False

Jawaban: a. True

10. Apa yang dimaksud dengan “fungsi” dalam pemrograman?
a. Blok kode yang dapat dipanggil untuk melakukan tugas tertentu
b. Variabel yang menyimpan data
c. Alat untuk menampilkan output
d. Struktur untuk mengulang perintah
e. Program utama

Jawaban: a. Blok kode yang dapat dipanggil untuk melakukan tugas tertentu

11. Apa yang dimaksud dengan komentar dalam pemrograman?
a. Kode yang dieksekusi oleh program
b. Kode yang digunakan untuk mencetak hasil
c. Penjelasan dalam kode yang tidak dieksekusi
d. Kode yang mengatur alur program
e. Penanganan kesalahan dalam kode

Jawaban: c. Penjelasan dalam kode yang tidak dieksekusi

12. Apa output dari kode berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 4;
x++;
cout << x;
return 0;
}
a. 3
b. 4
c. 5
d. Error
e. Tidak ada output

Jawaban: c. 5

13. Apa itu “kompilasi” dalam proses pembuatan program?
a. Proses untuk menulis kode
b. Proses untuk mengubah kode sumber menjadi file yang dapat dijalankan
c. Proses untuk mengeksekusi program
d. Proses untuk mendeklarasikan variabel
e. Proses untuk menambahkan komentar

Jawaban: b. Proses untuk mengubah kode sumber menjadi file yang dapat dijalankan

14. Apa output dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 10;
int y = 2;
cout << x / y;
return 0;
}
a. 5
b. 12
c. 20
d. 8
e. Error

Jawaban: a. 5

15. Apa yang dimaksud dengan “operator aritmatika” dalam pemrograman?
a. Operator untuk mengatur alur program
b. Operator untuk membandingkan nilai
c. Operator untuk melakukan perhitungan matematis
d. Operator untuk memasukkan input
e. Operator untuk mendeklarasikan variabel

Jawaban: c. Operator untuk melakukan perhitungan matematis

16. Apa hasil dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 5, y = 2;
cout << x % y;
return 0;
}
a. 1
b. 0
c. 2
d. 3
e. Error

Jawaban: a. 1

17. Dalam C++, tipe data yang digunakan untuk menyimpan karakter adalah…
a. int
b. char
c. float
d. double
e. string

Baca Juga:  50 Contoh Soal Kelas 12 SMK Manajemen Keuangan

Jawaban: b. char

18. Apa yang dimaksud dengan “struktur kontrol” dalam pemrograman?
a. Fungsi yang digunakan untuk perhitungan
b. Perintah untuk menampilkan hasil
c. Alat untuk mengatur alur eksekusi program
d. Deklarasi variabel
e. Proses untuk menginput data

Jawaban: c. Alat untuk mengatur alur eksekusi program

19. Bagaimana cara menulis komentar dalam satu baris di C++?
a. // Komentar
b. /* Komentar */
c. comment()
d. # Komentar
e. — Komentar

Jawaban: a. // Komentar

20. Apa yang dimaksud dengan “syntax error” dalam pemrograman?
a. Kesalahan dalam logika program
b. Kesalahan dalam penulisan kode
c. Kesalahan dalam mendeklarasikan variabel
d. Kesalahan dalam menggunakan operator
e. Kesalahan dalam input

Jawaban: b. Kesalahan dalam penulisan kode

21. Pada program berikut, berapa nilai dari variabel x setelah kode dieksekusi?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 5;
x *= 3;
cout << x;
return 0;
}
a. 5
b. 8
c. 15
d. 18
e. Error

Jawaban: c. 15

22. Fungsi yang digunakan untuk mengambil input dari pengguna di C++ adalah…
a. output()
b. scanf()
c. cin()
d. input()
e. get()

Jawaban: c. cin()

23. Apa yang dimaksud dengan “debugging” dalam pemrograman?
a. Proses menulis kode
b. Proses mencari dan memperbaiki kesalahan dalam kode
c. Proses untuk mendeklarasikan variabel
d. Proses kompilasi program
e. Proses untuk mencetak hasil program

Jawaban: b. Proses mencari dan memperbaiki kesalahan dalam kode

24. Apa output dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int a = 5, b = 6;
cout << a + b;
return 0;
}
a. 5
b. 6
c. 11
d. 56
e. Error

Jawaban: c. 11

25. Apa yang dimaksud dengan “perulangan” dalam pemrograman?
a. Struktur untuk mendeklarasikan fungsi
b. Struktur untuk membandingkan nilai
c. Struktur untuk mengulang suatu proses atau blok kode
d. Struktur untuk menampilkan hasil program
e. Struktur untuk menginput data

Jawaban: c. Struktur untuk mengulang suatu proses atau blok kode

26. Tipe data yang digunakan untuk menyimpan nilai benar atau salah (true/false) adalah…
a. bool
b. char
c. int
d. float
e. string

Jawaban: a. bool

27. Apa yang dimaksud dengan “fungsi void” dalam pemrograman?
a. Fungsi yang tidak mengembalikan nilai
b. Fungsi yang mengembalikan nilai string
c. Fungsi yang mengembalikan nilai integer
d. Fungsi yang digunakan untuk mencetak output
e. Fungsi yang digunakan untuk mengambil input

Jawaban: a. Fungsi yang tidak mengembalikan nilai

28. Berikut adalah contoh kode dalam C++, apa yang dimaksud dengan “x++” dalam kode tersebut?
cpp
int x = 5;
x++;
a. Mengurangi nilai x sebanyak 1
b. Menambah nilai x sebanyak 1
c. Mencetak nilai x
d. Menyimpan nilai 5 ke dalam x
e. Menampilkan hasil x

Jawaban: b. Menambah nilai x sebanyak 1

29. Perintah untuk membuat variabel dengan tipe data integer di C++ adalah…
a. integer x;
b. int x;
c. float x;
d. char x;
e. number x;

Jawaban: b. int x;

30. Fungsi yang digunakan untuk menghitung panjang string dalam C++ adalah…
a. length()
b. size()
c. strlen()
d. count()
e. width()

Jawaban: c. strlen()

31. Perintah berikut ini digunakan untuk mengakhiri fungsi atau program di C++:
a. exit()
b. stop()
c. return 0;
d. end()
e. close()

Jawaban: c. return 0;

32. Berikut adalah contoh pernyataan `if` di C++, apa yang akan terjadi jika x = 4?
cpp
if (x > 3) {
cout << “True”;
} else {
cout << “False”;
}
a. “True” akan dicetak
b. “False” akan dicetak
c. Program akan berhenti
d. Program akan menghasilkan error
e. Tidak ada output

Jawaban: a. “True” akan dicetak

33. Fungsi yang digunakan untuk menampilkan nilai dalam format yang lebih spesifik (misalnya dua angka desimal) adalah…
a. format()
b. printf()
c. cout()
d. display()
e. show()

Jawaban: b. printf()

34. Apa yang dimaksud dengan “nested loop” dalam pemrograman?
a. Penggunaan satu loop di dalam loop lainnya
b. Penggunaan beberapa loop yang terpisah
c. Penggunaan kondisi if di dalam loop
d. Penggunaan fungsi di dalam loop
e. Penggunaan variabel di dalam loop

Baca Juga:  50 Contoh Soal Kelas 12 SMK Pengembangan Perangkat Lunak

Jawaban: a. Penggunaan satu loop di dalam loop lainnya

35. Dalam C++, operator `&&` digunakan untuk…
a. Menambahkan dua nilai
b. Membandingkan dua nilai
c. Mengalikan dua nilai
d. Menggabungkan dua kondisi (logika AND)
e. Mengambil sisa hasil bagi

Jawaban: d. Menggabungkan dua kondisi (logika AND)

36. Apa yang dimaksud dengan “array multidimensi”?
a. Array dengan satu dimensi
b. Array dengan lebih dari satu dimensi
c. Array dengan tipe data berbeda
d. Array yang menyimpan data berupa string
e. Array yang menyimpan objek

Jawaban: b. Array dengan lebih dari satu dimensi

37. Perintah berikut digunakan untuk menampilkan output ke layar di C++:
cpp
cout << “Hello, World!”;
a. scanf
b. print
c. cout
d. output
e. show

Jawaban: c. cout

38. Dalam C++, tipe data yang digunakan untuk menyimpan angka bulat adalah…
a. int
b. float
c. string
d. bool
e. double

Jawaban: a. int

39. Apa output dari kode berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int a = 7;
cout << a / 2;
return 0;
}
a. 3
b. 4
c. 3.5
d. 7
e. Error

Jawaban: a. 3

40. Apa yang dimaksud dengan “kompilator” dalam pemrograman?
a. Program yang menulis kode
b. Alat untuk mengeksekusi program
c. Alat untuk memeriksa kesalahan dalam kode
d. Program yang mengubah kode sumber menjadi kode mesin
e. Alat untuk menampilkan output

Jawaban: d. Program yang mengubah kode sumber menjadi kode mesin

41. Fungsi `strlen()` digunakan untuk menghitung…
a. Panjang array
b. Jumlah elemen dalam array
c. Panjang string
d. Jumlah karakter dalam karakter array
e. Nilai total dalam array

Jawaban: c. Panjang string

42. Berikut adalah contoh perulangan dalam C++, apa output dari kode ini jika x = 3?
cpp
for (int i = 0; i < x; i++) {
cout << i;
}
a. 0
b. 01
c. 012
d. 0123
e. Error

Jawaban: c. 012

43. Apa itu “break” dalam perulangan?
a. Menghentikan seluruh program
b. Menghentikan perulangan dan melanjutkan eksekusi setelahnya
c. Menghentikan program
d. Menghentikan variabel
e. Menghentikan fungsi

Jawaban: b. Menghentikan perulangan dan melanjutkan eksekusi setelahnya

44. Perintah yang digunakan untuk mengambil input integer dari pengguna di C++ adalah…
a. scanf()
b. cin >>
c. input()
d. get()
e. read()

Jawaban: b. cin >>

45. Apa output dari program berikut?
cpp
#include <iostream>
using namespace std;
int main() {
int x = 3, y = 4;
cout << (x * y) + 5;
return 0;
}
a. 12
b. 17
c. 15
d. 5
e. 9

Jawaban: b. 17

46. Apa yang dimaksud dengan “fungsi rekursif”?
a. Fungsi yang memanggil dirinya sendiri
b. Fungsi yang memanggil fungsi lain
c. Fungsi yang tidak memerlukan parameter
d. Fungsi yang selalu mengembalikan nilai tetap
e. Fungsi yang tidak mengembalikan nilai

Jawaban: a. Fungsi yang memanggil dirinya sendiri

47. Fungsi berikut digunakan untuk membandingkan dua nilai dalam C++:
a. compare()
b. equals()
c. if()
d. ==
e. test()

Jawaban: d. ==

48. Apa yang dimaksud dengan “else” dalam pernyataan if-else?
a. Memeriksa kondisi kedua
b. Menghentikan eksekusi program
c. Menentukan aksi jika kondisi if tidak terpenuhi
d. Menentukan kondisi pertama
e. Memasukkan data dari pengguna

Jawaban: c. Menentukan aksi jika kondisi if tidak terpenuhi

49. Apa yang dimaksud dengan “tipe data primitif”?
a. Tipe data yang merupakan objek
b. Tipe data yang hanya berfungsi untuk operasi aritmatika
c. Tipe data yang tidak dapat diubah
d. Tipe data dasar yang tersedia dalam bahasa pemrograman
e. Tipe data yang hanya menyimpan angka

Jawaban: d. Tipe data dasar yang tersedia dalam bahasa pemrograman

50. Apa yang dimaksud dengan “pemrograman berorientasi objek” (OOP)?
a. Pemrograman yang berfokus pada prosedur
b. Pemrograman yang mengutamakan pengolahan data
c. Pemrograman yang menggunakan objek dan kelas untuk mengatur data dan perilaku
d. Pemrograman yang hanya berfokus pada input dan output
e. Pemrograman yang tidak memerlukan struktur data

Jawaban: c. Pemrograman yang menggunakan objek dan kelas untuk mengatur data dan perilaku

Sekian 50 Contoh Soal Kelas 12 SMK Dasar Pemrograman, Semoga Bermanfaat. Baca Juga

Spread the love

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *