Anda di halaman 1dari 16

SOAL USBN

PEMROGRAMAN DASAR
TEKNIK KOMPUTER DAN INFORMATIKA
TAHUN PELAJARAN 2018/2019

JAWABAN DI A SEMUA

1. Anda diminta untuk membuat program yang berisi data umur dari siswa dalam satu kelas.
Maka tipe data yang cocok untuk data umur adalah…
a. Integer
b. Char
c. Boolean
d. Float
e. Long
2. suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara
mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya untuk
memudahkan proses pembuatan program disebut dengan istilah..
a. Flowchart
b. Algoritma
c. Tree
d. Diagram
e. Alur
3. Perhatikan susunan algoritma berikut :
1. Mulai
2. Hitung luas (L) = p x l
3. Tampilkan luas (L)
4. Masukkan p
5. Selesai
6. Masukkan l
Urutan yang benar adalah…
a. 1,4,6,2,3,5
b. 1,2,5,3,4,6
c. 1,6,4,3,2,5
d. 1,5,2,3,4
e. 1,2,3,4,6,5
4. Perhatikan ekspresi berikut : x = 5 + y yang disebut dengan variabel adalah…
a. x, y
b. x
c. x , y, 5
d. = , +
e. 5 + y
5. Perhatikan ekspresi berikut ( 5 > 3 ). Operator relasional yang terdapat pada ekspresi
tersebut adalah…
a. >
b. 5
c. ()
d. 3
e. 5 > 3
6. Flowchart memiliki berbagai jenis symbol, Anda ingi memasukkan sebuah data (input)
kedalam algoritma program Anda. Maka simbol flowchart yang cocok digunakan
adalah…
a. Jajar genjang
b. Terminator
c. Belah ketupat
d. Trapezium
e. Persegi panjang
7. Perhatikan algoritma percabangan berikut :
Judul : Algoritma menentukan panjang dan lebar persegi panjang
Kamus : X, Y : integer
Algoritma :
Input ( X, Y)
If ( X > Y ) then
Output (“ X adalah panjang dan Y adalah lebar”)
Else if ( X < Y ) then
Output (“X adalah lebar dan Y adalah panjang”)
Else
Output(“X dan Y memiki nilai yang sama”)
Jika X adalah 20 dan Y adalah 5 maka outputnya adalah…
a. X adalah panjang dan Y adalah lebar
b. X adalah lebar dan Y adalah panjang
c. X dan Y memiliki nilai yang sama
d. Tidak muncul apapun
e. Y adalah panjang dan X adalah panjang
8. Perhatikan algoritma percabangan berikut:
If ( nilai > = 75) then
Print (“Anda Tidak Remidi”);
Else
Print (“Anda Remidi”);
Jika variable nilai diisi dengan nilai 55 maka outputnya adalah….
a. Anda Remidi
b. Anda Tidak Remidi
c. Zonk
d. Tidak keluar apapun
e. Nilai Anda 55
9. Algoritma Perulangan yang pernyataan dijalankan satu kali, lalu dicek syaratnya
adalah…
a. Do-while
b. For
c. While
d. If
e. If-Else
10. Berikut merupakan macam-macam algoritma perulangan adalah…
a. For, While, Do-While
b. If
c. If, Else-if, if bersarang
d. Variabel
e. Array dan fungsi
11. Perhatikan operasi logika berikut :
B = ( 5 > 2 ) && ( 1 > 9 );
Makan Nilai B adalah…
a. 0
b. 1
c. 5 > 2
d. 1 > 9
e. error
12. Perhatikan algoritma perulangan berikut :
Judul : algoritma perulangan for
Kamus : a : integer
Algoritma :
int a;
for (a = 10 ; a > = 1; a--)
print a;
endfor
Output yang ditampilkan adalah…
a. 10 9 8 7 6 5 4 3 2 1
b. 1 2 3 4 5 6 7 8 9 10
c. 10 9 8 7 6 5 4 3 2
d. 2 3 4 5 6 7 8 9 10
e. 1 2 3 4 5 6 7 8 9
13. Jika sebuah program penghitung nilai luas persegi panjang maka operator aritmatik yang
digunakan adalah …
a. *
b. -
c. +
d. /
e. -/
14. Anda diminta untuk membuat sebuah flowchart proses perhitungan a = b + c, maka
tulisan a = b + c seharusnya dimasukkan pada flowchart dengan simbol…
a. Persegi panjang
b. Bulat
c. Jajar genjang
d. Belah ketupat
e. terminator
15. Perhatikan flowchart berikut :

Output flowchart tersebut adalah…


a. 1,3,5,7,9,11
b. 1,2,3,4,5,6,7,8,9,10
c. 1,3,5,7,9
d. 2,4,6,8
e. 2,4,6,8,10
16. Terdapat Array sebagai berikut : int umur[5];
Array tersebut disebut dengan istilah…
a. Array 1 dimensi
b. Array 2 dimensi
c. Array multidimensi
d. Array tidak berdimensi
e. Array 5 dimensi
17. Terdapat array sebagai berikut : int A[8];
Maka data yang dapat dimasukkan sebanyak…
a. 8
b. 7
c. 6
d. 5
e. 4
18. Berikut yang termasuk operator logika adalah…
a. OR
b. =
c. %
d. >
e. +
19. Perhatikan fungsi berikut ini:
Int kali (int m, int n) dari penulisan fungsi di samping yang merupakan nama fungsi
adalah…
a. kali
b. int
c. Int m
d. Int n
e. (int m, int n)
20. Anda diminta untuk membuat sebuah algoritma menentukan seorang warga negara
indonesia dapat memiliki KTP atau tidak dengan membandingkan umur mereka. Jika
sudah diatas 17 tahun mereka boleh mempunyai KTP. Maka algoritma yang cocok
adalah…
a. Percabangan
b. Perulangan
c. Procedural
d. Array
e. fungsi
21. Perhatikan algoritma dibawah ini !
If ( x > 20 )
Then output (“Dewasa”)
End
Algoritma diatas disebut dengan…
a. Percabangan 1 kondisi
b. Pecabangan 2 kondisi
c. Percabangan bersarang
d. Percabangan multi kondisi
e. Bukan percabangan
22. Bentuk percabangan yang memiliki banyak kondisi disebut dengan percabangan…
a. Bersarang
b. 1 kondisi
c. 2 kondisi
d. 3 kondisi
e. multi kondisi
23. Anda diminta untuk membuat program yang menampilakn tulisan “Saya Cinta TKJ”
sebanyak 100 kali. Maka jenis algortima yang cocok untuk permasalah tersebut adalah…
a. perulangan
b. percabangan
c. procedural
d. Array
e. string
24. Berikut jenis – jenis algoritma perulangan adalah…
a. For, while, do-while
b. If , if-else, if bersarang
c. For, if ,while
d. Do-while, for, if-else
e. Array, string, while
25. Berikut yang merupakan bahasa pemrograman adalah…
a. Java
b. C—
c. HTM
d. Debian
e. Float
26. Suatu tempat menampung nilai, merupakan salah satu jenis identifier yang nilainya tidak
tetap atau nilainya adalah hasil dari suatu proses disebut…
a. Variable
b. Fungsi
c. Tipe data
d. Array
e. integer
27. Perhatikan percabangan berikut ini :
If ( jam > 12 ) then
Write “sudah larut malam”
Else
Write “masih sore”
Untuk menghasilkan output “masih sore” maka interval jam adalah…
a. Jam <= 12
b. Jam >=10
c. Jam nilai <=12
d. Jam > 12
e. Jam ==12
28. Perhatikan algoritma berikut:
Variabel a = integer
a = 1;
while ( a <= 5)
output “SEMANGAT”
a = a+1
end
Berapa kali tulisan “SEMANGAT” akan keluar di layar?
a. 5
b. 4
c. 3
d. 2
e. 1
29. Perhatikan potongan operasi logika berikut :
C = ( 11 > 5 ) . . . ( 25 < 10)
Agar C bernilai 1 (true) maka perator logika yang harus dimasukkan ke dalam … tersebut
adalah…
a. OR
b. AND
c. NOT
d. =
e. *
30. Penulisan Operator yang digunakan untuk menaikkan nilai variabel sebesar satu
adalah….
a. a+ +
b. a= =
c. a>>
d. a--
e. a+-
31. Dalam sebuah array satu dimensi, tipe data yang digunakan haruslah sama. Karakteristik
array yang dimaksud adalah ....
a. Homogen
b. Heterogen
c. Dinamis
d. Statis
e. Terurut

32. Diketahui budi seorang programmer komputer, ketika sedang membuat program data
siswa dia dihadapkan oleh sebuah array dengan tipe data integer dan variabel A[8][4].
Jumlah elemen array yang dibuat budi adalah ....
a. 32
b. 12
c. 8
d. 4
e. 16
33. Berikut yang merupakan pendeklarasian array dua dimensi yang benar apabila diketahui
value dari data yang disajikan merupakan bilangan bulat pada bahasa pemrograman C++
adalah ....
a. int a[5][4];
b. float a[5][4];
c. int a[5], a[4];
d float a[4], a[4];
e. char a[5][4];
34. Budi disajikan potongan bahasa pemrogram c++ seperti dibawah:

Apabila budi ingin menampilkan nama siswa dari struct tersebut, maka pemanggilan
yang benar adalah ....
a. siswa.nama
b. data_siswa.nama
c. nama
d. data_siswa.siswa.nama
e. siswa[nama]

35. Budi adalah temannya Ani yang bekerja sebagai programmer, dia disajikan data int a[3]
[5] = {{1,2,3,4,5}, {6,7,8,9,10}, {11,12,13,14,15}};. Dari pernyataan array tersebut,
maka nilai dari baris index ke-1 dan kolom index ke-2 adalah ....
a. 8
b. 2
c. 12
d. 6
e. 11
36. Perhatikan potongan program c++ berikut:

Apabila p=5 dan l=4, maka keluaran dari prosedur luas_pp tersebut adalah ....
a. 20
b. 9
c. 7.5
d. 15
e. Error
37. Perhatikan potongan program c++ berikut:
Pada baris ke 5 terdapat sintak pemrogram yang berarti ....
a. Memberikan nilai 20 pada z saja
b. Memberikan nilai x, y, dan z dengan 20
c. Membuat variabel global
d. Mendefinisikan prosedure
e. Menampilakan nilai x berisi 20

38. Untuk mengakhiri eksekusi dari function dan memberikan nilai pada saat akhir dari
function kepada pemanggil merupakan fungsi dari ....
a. Return
b. Continue
c. Break
d. Exit
e. Endl

39. Perhatikan potongan program berikut:


Apabila budi akan mengeksekusi program tersebut maka uang terjadi adalah ....
a. Menampilkan Luas = 45 dari prosedure luas_pp
b. Diminta memasukkan nilai l
c. Proram error karena nilai l belum dituliskan
d. Menampilkan Luas = 45 dari function luas_pp
e. Mengembalikan nilai 0 dari function main
40. Budi seorang programmer handal, dia diminta oleh bosnya untuk membuat sebuah
program yang bisa menampilkan bilangan ganjil dari 0 sampai 9. Berikut potongan
program budi yang benar adalah ....

a.

b.

c.

d.

e.
SOAL ESSAY
41. Anda sebagai seorang programmer diminta membuat sebuah flowchart percabangan
untuk menentukan seorang anak boleh naik wahana flying fox atau tidak dengan kondisi
jika anak tersebut memiliki tinggi 150 keatas maka boleh naik, jika tinggi anak tersebut
149 kebawah maka tidak boleh naik. Buatlah flowchart untuk masalah tersebut !

Jawaban : (Nilai : 20)


42. Perhatikan flowchart berikut :

Jelaskan jalannya Algortima tersebut dan bagaimana output dari flowchart tersebut!
Jawaban : (Nilai 20)
Algoritma flowchart di atas adalah flowchart perulangan while.jalannya program tersebut
adalah :
1. Nilai awal i adalah 1.
2. Lalu dicek apakah i <= 10
3. jika iya maka nilai i akan dicetak.
4. Setelah itu nilai i akan ditambahkan dengan 1
5. Kembali ke langkah 2 – 3 - 4, perulangan terus berulang sampai tidak memenuhi
syarat i <= 10.
6. Jika tidak memenuhi syarat maka program flowchart selesai
Output flowchart tersebut adalah : 1 2 3 4 5 6 7 8 9 10
43. Tuliskan cara pendeklarasian array dua dimensi dan contoh penulisan 3 index baris dan 2 index
kolom!
Jawaban : (Nilai 20)

Cara Pendeklarasian:

tipeData identifier[size1][size2][...] = {{val1, val2, ...}, {val1, val2, ...}, {....}};

Cara Penulisan

int nilai[3][2] = {{1,2}, {3,4}, {5,6}}

44. Ani adalah seorang programer wanita yang handal. Ketika membuat program dia dituntut untuk
mengembangkan source code program secara efektif dan efisien. Oleh karena itu, Ani membuat sebuah
program yang dibagi menjadi sub-sub program yang lebih kecil yang dalam hal ini pengembangan bagian
program lebih difokuskan pada sub-sub yang memerlukan pengembangan saja. Contohnya yaitu
penggunaan function dan procedure. Jelaskan perbedaan dari function dan procedure!

Jawaban : (Nilai 20)

Function adalah sebuah kumpulan Statement yang akan mengembalikan sebuah nilai balik pada
pemanggilnya sedangkan procedure adalah sub program yang digunakan untuk melakukan proses
tertentu dan tidak mengembalikan nilai.

45. Budi seorang programmer komputer yang akan membuat perhitungan volume kubus. Dalam
pembuatan program tersebut, Budi menggunakan metode call by value. Apakah yang dmaksud dengan
pemanggilan fungsi call by value dan apa bedanya dengan call by reference?

Jawaban : (Nilai 20)

- call by value : Pemanggilan fungsi dengan melewatkan nilai parameter variabel

- call by reference : Suatu usaha melewatkan alamat dari suatu variable ke dalam fungsi

Anda mungkin juga menyukai