Uploaded by setyawan6097

Pemrograman Dasar

advertisement
PEMERINTAH PROVINSI JAWA TENGAH
DINAS PENDIDIKAN DAN KEBUDAYAAN
SEKOLAH MENENGAH KEJURUAN NEGERI 7
SEMARANG
Jalan Simpang Lima, Kota Semarang Kode Pos 50241 Telepon 024-8311532
Faksimile 024-8447649 Surat Elektronik [email protected]
UJIAN SEKOLAH BERSTANDAR NASIONAL (USBN)
SEKOLAH MENENGAH KEJURUAN
TAHUN PELAJARAN 2018/2019
DOKUMEN NEGARA
SANGAT RAHASIA
LEMBAR SOAL
Mata Pelajaran
Kelas/Program
Hari/Tanggal
Waktu
: Pemrograman Dasar
: Teknik Komputer dan Jaringan
: Selasa / 9 April 2019
: 120 menit
KURIKULUM 2013
SOAL UTAMA
Petunjuk Umum :
1. Tulislah terlebih dahulu Nomor Peserta dan Identitas Anda pada lembar jawaban yang disediakan sesuai
petunjuk yang diberikan oleh Pengawas menggunakan pena/ballpoint.
2. Untuk menjawab Soal Pilihan Ganda, gunakan pena/ballpoint untuk menyilang pada huruf
A, B, C, D atau E pada lembar jawaban yang telah disediakan.
3. Untuk menjawab Soal Uraian, gunakan pena/ballpoint dalam menuliskan jawaban pada lembar jawaban yang
telah disediakan.
4. Selama pelaksanaan USBN tidak diperkenankan bertanya atau minta penjelasan mengenai jawaban soal yang
diujikan kepada siapapun termasuk kepada Pengawas.
5. Dilarang menggunakan kalkulator, HP, Kamus dan alat bantu lain dalam menjawab soal USBN
6. Periksaa dan bacalah soal-soal dengan teliti sebelum Anda menjawabnya.
7. Laporkan kepada Pengawas bila terdapat tulisan yang kurang jelas, rusak atau jumlah soal kurang.
8. Jumlah soal sebanyak 40 butir, terdiri dari :
Soal Pilihan Ganda 40 butir, yaitu nomor 1 – 40
9. Dahulukan mengerjakan soal-soal yang Anda anggap mudah.
10. Unggah Hasil Pekerjaan ke alamat situs yang di sediakan Panitia.
11. Periksa pekerjaan Anda sebelum diserahkan kepada Pengawas dan ke luar ruangan.
Petunjuk Khusus :
Soal Pilihan Ganda
1. Pilihlah salah satu jawaban yang paling tepat dengan memberi tanda silang (X) pada salah satu pilihan
jawaban A, B, C, D, E pada lembar jawaban yang disediakan.
2. Apabila ada jawaban yang Anda anggap salah, dan Anda ingin memperbaikinya, tidak diperbolehkan
menggunakan correction pen (tipe-x) atau penghapus, melainkan dengan cara seperti di bawah ini :
Semula
:
A
B
C
D
E
Dibetulkan menjadi
:
A
B
C
D
E
SELAMAT BEKERJA
Pemrograman dasar 2019
1
Perhatikan urutan berikut :
1. Aku membungkus paket
2. Aku menuliskan alamat pengirim dan penerima di sampul
3. Paket siap dikirim
4. Aku menyerahkan paket ke petugas
5. Aku pergi ke kantor pos
Urutan paling tepat untuk kegiatan mengirim paket adalah :
A.
1-2-3-4-5
B.
1-2-5-4-3
C.
1-5-3-4-2
D.
1-3-2-4-5
E.
1-5-4-3-2
2
Perhatikan kode program berikut
# belajar program
a= 17
b= 27
c=a+b
print (a)
print (b)
print (c)
pada program di atas a,b,c digolongkan sebagai … dalam pemrograman
A.
head
B.
body
C.
variabel
D.
operator
E.
comment
3
Kode program berikut yang menunjukkan struktur pengulangan dengan kondisi di akhir adalah…
int num=0;
A.
B.
C.
D.
E.
4
count 0:5 {
writeln (num)
}
int num=0;
for (int i=0;i<5;i++){
cout<<num;
}
int num=0;
while (num<5{
cout<<num;
num++
}
int num=0;
cout<<num;
for(int i=0;i<5;i++){
cout<<num
}
int num=0;
do {
cout<<num;
num++;
}
while (num<5)
Ikhlash membantu pekerjaan rumah tangga. Dia menjaga ketersediaan air di kamar mandi. Setiap pagi dan
sore Ikhlash menimba air dari sumur dan mengisikannya ke bak kamar mandi hingga penuh.
Kegiatan yang dilakukan Ikhlash mengisi bak air merupakan contoh algoritma ….
A.
penugasan
B.
perulangan
C.
perbandingan
D.
logika
E.
Relasi
5
Angga akan menghitung luas segitiga siku-siku yang diketahui alas dan tingginya. Pseudocode yang paling
tepat untuk menyelesaikan kasus tersebut adalah….
A.
B.
C.
D.
E.
6
SImbol flowchart berikut adalah melambangkan kegiatan ,,, dalam pemrogaman
A.
B.
C.
D.
E.
7
Start
Proses
Percabangan
Perulangan
Perhitungan
Perhatikan kode program Java berikut
Jika variabel warna diganti menjadi “kuning”, baris program yang dijalankan setelah baris ke-4 adalah…
A.
B.
C.
D.
E.
8
Baris
Baris
Baris
Baris
Baris
ke-5
ke-7
ke-9
ke-10
ke-13
Perhatikan potongan program berikut
nama$="joesti"
angka = 60
if nilai>70
then
print "Selamat"+nama+"dinyatakan Lulus"
else
print “Maaf”+nama$+”Anda dinyatakan gagal”
endif
Hasil eksekusi program adalah ….
A.
Selamat dinyatakan lulus
B.
Maaf joesti Anda dinyatakan gagal
C.
Selamat joesti dinyatakan lulus
D.
Maaf Anda dinyatakan gagal
E.
error
9
Hasil dari potongan kode program berikut adalah …..
a=20
b=10
c=15
if a>b then
z=a
else
z=b
endif
if c>z then
z=c
else
z=z
print z
endif
A.
B.
C.
D.
E.
5
10
15
20
25
10 Perhatikan tabel berikut
Nilai
Predikat
91 – 100
A
81 – 90
B
71 – 80
C
Alur logika yang dapat digunakan untuk tabel di atas adalah
if nilai > 90 then
A.
predikat =”A”
else if nilai>80 then
predikat =”B”
else predikat=C”
B.
if nilai > 91 then
predikat =”A”
else if nilai>81 then
predikat =”B”
else predikat=C”
C.
if nilai = 90 then
predikat =”A”
else if nilai=80 then
predikat =”B”
else predikat=C”
D.
if nilai < 91 then
predikat =”A”
else if nilai<81 then
predikat =”B”
else predikat=C”
E.
if nilai < 90 then
predikat =”A”
else if nilai<80 then
predikat =”B”
else predikat=C”
11 Perhatikan potongan program berikut
ulang=2
for i = 0 to ulang
print(i)
Hasil eksekusi program adalah ….
A.
0
1
2
B.
1
2
3
C.
0
1
D.
3
E.
0
12 Instruksi for dalam Bahasa Basic 256 digunakan untuk ….
A.
logika
B.
perulangan
C.
percabangan
D.
aritmatika
E.
simpanan
13 Sebuah sistem komputer memberi kesempatan tiga kali kepada pengguna untuk mencoba akses. Akses akan
diberikan bila username dan password yang dimasukkan sesuai dengan database. Dalam field username
bernama userdb dan password bernama passdb, maka instruksi logika untuk mengakses adalah ….
username=userdb or password=passdb
A.
username=userdb and password=passdb
B.
username=userdb not password=passdb
C.
username=passdb or password=userdb
D.
username=passdb and password=userdb
E.
14 Anda membutuhkan bilangan genap positif di bawah angka 11. Instruksi Basic 256 yang digunakan adalah
for i = 0 to 11
A.
for i = 1 to 11
B.
for i = 2 to 11
C.
for i = 2 to 11 step 2
D.
for i = 1 to 11 step 2
E.
15 Sebuah instruksi menghasilkan tampilan 10,9,8,7,6,5,4,3,2,1.
Instruksi yang digunakan adalah ….
for i = 10 to 1
A.
for i = 10 to 0
B.
for i = 10 to 1 step 1
C.
for i = 10 to 1 step -1
D.
for i = 10 to 0 step -1
E.
16 Di setiap kemasan mie instan senantiasa diberikan petunjuk cara memasak.
Dalam pemrograman petunjuk cara memasak mie instan setara dengan kegiatan ….
A.
Berurutan
B.
Menyimpan
C.
Bercabang
D.
Perulangan
E.
Perhitungan
17 Yustin ingin menghitung volum silinder, ia hanya memiliki nilai diameter dan tinggi dari silinder tersebut.
Fungsi yang sesuai untuk membantu Yustin adalah, kecuali….
A.
B.
C.
D.
E.
18 Contoh penggunaan array beberapa kolom dan baris adalah pada pekerjaan ….
A.
login sistem
B.
perhitungan jumlah data
C.
perhitungan pencacah
D.
perhitungan matriks
E.
perhitungan laba
19 Untuk memudahkan pengerjaan program, dapat digunakan aturan program utama memanggil sebuah program
kecil untuk bekerja. Setelah program kecil selesai bekerja, hasil dikirimkan ke program utama.
Program kecil ini biasa disebut ….
A.
fungsi
B.
head
C.
title
D.
body
E.
count
20 Dalam Basic 256, manakah pernyataan berikut yang menunjukkan sebuah fungsi?
A.
Fungsi;
B.
Fungsi{}
C.
Fungsi()
D.
Fungsi:
E.
Fungsi[]
21 Perhatikan flowchart berikut
Pernyataan yang tepat mengenai flowchart di atas adalah…
A.
Jika input = 0, output=0
B.
Jika input = 6, output=6
C.
Jika input = 1, output=1
D.
Jika input = 8, output=2
E.
Jika input = 0, output=0
22 Sebuah gerbang OR dengan dua masukan (A dan B) dapat dituliskan dengan bahasa kode ….
A.
if A=0 or B=0 then keluaran=1
B.
if A=0 or B=0 then keluaran=0
C.
if A=1 or B=1 then keluaran=1
D.
if A=0 and B=0 then keluaran=1
E.
if A=1 and B=0 then keluaran=0
23 Perbedaan variabel angka$ dan variabel angka adalah …
A.
variabel angka$ tidak dapat dipakai perhitungan dan variabel angka tidak dapat dipakai perhitungan
B.
variabel angka$ tidak dapat dipakai perhitungan dan variabel angka dapat dipakai perhitungan
C.
variabel angka$ dapat dipakai perhitungan dan variabel angka tidak dapat dipakai perhitungan
D.
variabel angka$ dapat dipakai perhitungan dan variabel angka dapat dipakai perhitungan
E.
variabel angka$ untuk bilangan dan variabel angka untuk string
24 Pasangan instruksi berikut yang tidak tergolong alur kondisi/percabangan adalah
A.
if then
B.
if then else
C.
switch case
D.
case endcase
E.
do until
25 Output yang diharapkan dari kode progam berikut adalah menampilkan kalimat “Welcome to My World”
sebanyak 1 kali; Struktur kontrol yang sesuai untuk menghasilkan output yang diharapkan adalah….
A.
B.
C.
D.
E.
26 Keluaran dari kode program berikut adalah….
A.
B.
C.
D.
E.
Can drive
Can not Drive
Thank you
Can drive Thank You
Can not Drive Thank You
27 Perhatikan penulisan program berikut
x=
y=
z=
if
20
10
30
a>b:
maks=a
else:
maks=b
if c>maks:
maks=c
else:
maks=maks
print (maks)
Hasil yang disajikan program di atas adalah ….
A.
30
B.
20
C.
10
D.
0
E.
error
28 Perhatikan penulisan program berikut
ulang=7
for i = 1 to ulang
if i>3 then
print "stemba"
endif
next i
Tulisan “Stemba Jaya”tertulis sebanyak … kali
A.
7
B.
6
C.
5
D.
4
E.
3
29 Perhatikan penulisan program berikut
input "masukkan angka",batas
i = 1
while i<batas
print i
i = i+1
endwhile
Agar program menghasilkan angka 1,2,3,4,5,6,7,8,9,10. User harus memberikan masukan ….
A.
10
B.
11
C.
12
D.
13
E.
14
30 Jika x adalah batas awal dan z adalah batas akhir sebuah perulangan, penulisan kode Basic yang tepat adalah
….
for i = z to z
A.
for i = x to x
B.
for I = z to z
C.
for z = i to x
D.
for x = I to z
E.
31 Sebuah aplikasi menhendaki tulisan “Merdeka” tampil sebanyak permintaan pengguna. Kode yang paling
tepat digunakan adalah …
A.
input “tulis berapa kali “,bilang$
for i = 1 to bilang$
print “Merdeka”
next i
B.
input “tulis berapa kali “,bilang
for i = 1 to bilang$
print “Merdeka”
next i
C.
input “tulis berapa kali “,bilang
for i = 1 to bilang
print “Merdeka”
next i
D.
input “tulis berapa kali “,bilang$
for i = 1 to bilang
print “Merdeka”
next i
E.
input “tulis berapa kali “,bilang
for i = bilang to 1
print “Merdeka”
next i
32 Hasil eksekusi program berikut adalah ….
for i = 0 to 5
if i>3 then
print i+10
endif
next i
A.
B.
C.
D.
E.
13
13
14
14
15
14
14 15
15
15 16
16
33 Hasil eksekusi program berikut adalah ….
for i = 10 to 5 step-1
if i>7 then
print i+10
endif
next i
A.
B.
C.
D.
E.
20 19
20 19 18
19 18
19 18 17
18 17
34 Untuk mengeksekusi program pada Basic 256, ditekan tombol ….
1
A.
B.
C.
D.
E.
2
3
4
5
1
2
3
4
5
35 Anda membuat program untuk memeriksa apakah sebuah bilangan merupakan kelipatan tiga atau bukan.
Penulisan program yang sesuai adalah ….
A.
if bilangan >3 then print “kelipatan3” else print “bukan kelipatan 3”
B.
if bilangan/3=0 then print “kelipatan3” else print “bukan kelipatan 3”
C.
if bilangan=3 then print “kelipatan3” else print “bukan kelipatan 3”
D.
if bilangan%3=0 then print “kelipatan3” else print “bukan kelipatan 3”
E.
if bilangan\3=0 then print “kelipatan3” else print “bukan kelipatan 3”
36 Pak Guru Adi akan menghitung nilai rata-rata 5 orang siswa, operasi perhitungan nilai yang benar adalah….
A.
B.
C.
D.
E.
37 Hasil eksekusi dari potongan program berikut adalah ….
dim a(2,2)
a[0,0] =1
a[0,1]=2
a[1,0]=3
a[1,1]=a[0,0]+a[0,1]
print a[1,1]
A.
B.
C.
D.
E.
0
1
2
3
4
38 Perhatikan deklarasi array berikut
Elemen array bungawarna pada indeks [1][2] adalah….
A.
Melati
B.
Ungu
C.
Mawar
D.
Putih
E.
Anggrek
39 Hasil eksekusi dari potongan program berikut adalah ….
goto tiga
goto dua
goto satu
end
dua:
print "namaku Tyas"
return
satu:
print "namaku Balqis"
return
tiga:
print "namaku Ikhlash"
return
A.
B.
C.
D.
E.
namaku Tyas
namku Balqis
namaku Ikhlash
namaku Ikhlash
namaku Balqis
namaku Ikhlash
namaku Tyas
40 Perhatikan cuplikan kode berikut
Tentukan pasangan nilai input dan ouput yang sesuai
A.
B.
C.
D.
E.
Input: a=1 , b=2
Input: a=1 , b=2
Input: a=3 , b=4
Input: a=3 , b=4
Input: a=3 , b=4
Output: result=3
Output: result=5
Output: result=5
Output: result=14
Output: result=25
Download