24
Pemrograman Dasar Pilihlah satu jawaban yang paling benar! 1. Urutan langkah-langkah untuk memecahkan masalah adalah pengertian dari… a. Algoritma d. Pseudocode b. Bahasa pemrograman e. Flowchart c. Bahasa natural 2. Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah adalah pengertian dari… a. Bahasa natural d. Flowchart b. Bahasa Pascal e. Pseudocode c. Bahasa C++ 3. Diantara simbol flowchart berikut, yang berfungsi untuk menggambarkan proses inisialisasi/ pemberian harga awal adalah… a. d. b. e. c. 4. Diantara simbol flowchart berikut, yang berfungsi untuk menggambarkan proses pengambilan keputusan (kondisi if) adalah… a. d. b. e. c. 5. Perhatikan pseudocode dibawah ini: 1. start 2. read X, Y 3. P = X + Y 4. if P >= 10 then Q = X / Y else Q = X * Y 5. print Q 6. stop Algoritma tersebut jika dibuat dengan flowchart, maka strukturnya adalah… a. Berurutan d. Pengulangan For b. Percabangan e. Pengulangan While c. Percabangan bersarang 6. Dari pseudocode pada nomor 12 diatas, jika kita menginput nilai X = 8 dan Y = 2 maka outputnya adalah… a. Q = 4 d. Q = 16 b. Q = 6 e. Q = 20 c. Q = 10 7. Perhatikan pseudocode dibawah ini: 1. start 2. A = 1, B = 0 3. while A < 10 do print B 4. A = A + 2 5. B = A * A 6. stop Hasil dari algoritma tersebut adalah… a. 0, 9, 25, 49, 81 d. 1, 9, 25, 49, 81, 100

Rangkuman soal TI SMK

Embed Size (px)

Citation preview

Page 1: Rangkuman soal TI SMK

Pemrograman Dasar

Pilihlah satu jawaban yang paling benar!

1. Urutan langkah-langkah untuk memecahkan masalah adalah pengertian dari…a. Algoritma d. Pseudocodeb. Bahasa pemrograman e. Flowchartc. Bahasa natural

2. Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah adalah pengertian dari…a. Bahasa natural d. Flowchartb. Bahasa Pascal e. Pseudocode c. Bahasa C++

3. Diantara simbol flowchart berikut, yang berfungsi untuk menggambarkan proses inisialisasi/ pemberian harga awal adalah…

a. d.

b. e.

c.

4. Diantara simbol flowchart berikut, yang berfungsi untuk menggambarkan proses pengambilan keputusan (kondisi if) adalah…

a. d.

b. e.

c.

5. Perhatikan pseudocode dibawah ini:1. start2. read X, Y3. P = X + Y4. if P >= 10 then Q = X / Y else Q = X * Y5. print Q6. stopAlgoritma tersebut jika dibuat dengan flowchart, maka strukturnya adalah…

a. Berurutan d. Pengulangan Forb. Percabangan e. Pengulangan Whilec. Percabangan bersarang

6. Dari pseudocode pada nomor 12 diatas, jika kita menginput nilai X = 8 dan Y = 2 maka outputnya adalah…a. Q = 4 d. Q = 16b. Q = 6 e. Q = 20c. Q = 10

7. Perhatikan pseudocode dibawah ini:1. start2. A = 1, B = 03. while A < 10 do print B4. A = A + 25. B = A * A6. stopHasil dari algoritma tersebut adalah…

a. 0, 9, 25, 49, 81 d. 1, 9, 25, 49, 81, 100b. 0, 9, 25, 49, 81, 121 e. 1, 9, 25, 49, 81, 121c. 1, 9, 25, 49, 81

8. Perhatikan pseudocode dibawah ini:1. start2. A = 23. for X = 1 to 20 do4. print A5. A = A + 36. stopHasil dari algoritma tersebut adalah…

Page 2: Rangkuman soal TI SMK

a. 1,4,7,10,13,16,19 d. 2,5,8,11,14,17,20,23b. 1,4,7,10,13,16,19,22 e. 2,3,5,7,11,13,17,19 c. 2,5,8,11,14,17,20

9. Perhatikan data berikut:Variable : data yang diinput

Kodebarang : BB014 Namabarang : Black Bery Curve Hargabarang : Rp 2.500.000 Tanggalproduksi : 09/10/2011 Jumlahstok : 12 unitTipe data yang tepat untuk variable hargabarang diatas adalah…a. Integer d. Stringb. Real e. Currencyc. Date

10. Untuk variable tanggalproduksi, tipe data yang tepat adalah…a. Integer d. Stringb. Real e. Currencyc. Date

11. Perhatikan listing code Pascal berikut:Var Prima : Array[1..20] of Integer; i,j : Integer; bil : Integer;Begin ClrScr; For i := 2 to 20 Do Begin Prima[i]:=i; For j:= 2 to i-1 Do Begin bil := (i mod j); If bil = 0 then Prima[i]:=0; End; If Prima[i] > 0 Then Write(Prima[i],' '); End; Readln;End.Hasil dari program tersebut apabila di-run adalah…a. Bilangan bulat 1 hingga 20 d. 2,3,5,7,11,13,17,19b. 1,3,5,7,9,11,13,15,17,19 e. 2,4,6,8,10,12,14,16,18c. 1,2,3,5,7,11,13,17,19

12. Perhatikan listing code Pascal berikut:vara,b,c,d:integer;beginclrscr;writeln('Masukkan tiga angka: ');readln(a,b,c);if (a>b) and (a>c) then d := aelse if b>c then d := belse d := c;writeln('Nilai adalah : ',d);readln;end.Jika program tersebut di-run dan dimasukkan angka: 3 7 5 , hasilnya adalah…a. 3 d. 3 5 7b. 5 e. 7 5 3c. 7

13. Hasil dari 34 / 2 + 3 * 4 ^ 2 adalah...a. 6500 d. 161b. 6400 e. 65c. 650

14. Pernyataan yang benar pada contoh operasi logika berikut adalah...a. 12 * 2 + 5 * 3 > 24 / 2 + 30 / 2 //False

Page 3: Rangkuman soal TI SMK

b. 5 ^ 2 / 5 + 15 < 8 + 7 * 2 – 5 //Truec. 40 * 2 + 5 * 2 ^ 2 = 100 //Trued. 25 * 2 / 5 + 4 – 6 > 8 //Falsee. 16 < 2 + 3 * 4 – 5 //True

15. Kumpulan data bertipe sama yang menggunakan nama yang sama adalah pengertian dari...a. Constanta d. Procedure b. Variable e. Functionc. Array

16. Yang tidak termasuk operasi string adalah...a. Contac d. Insertb. Copy e. Lengthc. Delete

17. Operasi string yang menghasilkan sebuah substring dari suatu string adalah...a. Contac d. Insertb. Copy e. Lengthc. Delete

18. Operasi string yang menghapus substring dari suatu string adalah...a. Contac d. Insertb. Copy e. Lengthc. Delete

19. Operasi string yang menghitung jumlah karakter dalam suatu string adalah...a. Contac d. Insertb. Copy e. Lengthc. Delete

20. Operasi string yang menyisipkan string dalam suatu string yang lain adalah...a. Contac d. Insertb. Copy e. Lengthc. Delete

21. Hasil dari : edit1.text := concat(‘SMK’,’N’,’1’,’ Pandeglang’); adalah...a. SMKN1 Pandeglang d. SMKN 1Pandeglangb. SMKN 1 Pandeglang e. S M K N 1 Pandeglangc. SMK N 1 Pandeglang

22. Hasil dari potongan program berikut adalah...Var S:string;BeginS:= ‘Hanacaraka Datasawala’;Edit1.text:=copy(S,7,9);End;a. rak data d. Hanacarb. raka data e. Hanacarakc. raka datas

23. Hasil dari potongan program berikut adalah...Var S:string;BeginS:= ‘Hanacaraka Datasawala’;Delete(S,7,9); Edit1.text:=S;End;a. Hanaca sawala d. aka Datasawalab. Hanacasawala e. a Datasawalac. Hanacaawala

24. Hasil dari potongan program berikut adalah...Var S:string;BeginS:= ‘SISTEM INFORMASI’;Insert(‘KOMUNIKASI’,S,7); Edit1.text:=S;End;a. SISTEM KOMUNIKASI INFORMASIb. SISTEMKOMUNIKASI INFORMASIc. SISTEMKOMUNIKASIINFORMASId. SISTEM KOMUNIKASI DAN INFORMASIe. SISTEM INFORMASI KOMUNIKASI

25. Hasil dari potongan program berikut adalah...Var S:string; T:integer;Begin

Page 4: Rangkuman soal TI SMK

S:=‘ Kemenkominfo (Kementrian Telekomunikasi dan Informasi).’;T:=Length(S); Edit1.text:=inttostr(T);End;a. 56 c. 51 e. 48b. 55 d. 49

26. Hasil dari potongan program berikut adalah...Var S:string;BeginS:= ‘SISTEM KOMUNIKASI DAN INFORMASI’;Edit1.text:=Lowercase(S);End;a. SISTEM KOMUNIKASI DAN INFORMASIb. sistem komunikasi dan informasic. sISTEM kOMUNIKASI dAN iNFORMASId. Sistem Komunikasi Dan Informasie. Sistem komunikasi dan informasi

27. Hasil dari potongan program berikut adalah...Var S:string;BeginS:= ‘SISTEM KOMUNIKASI DAN INFORMASI’;Edit1.text:=Uppercase(S);End;a. SISTEM KOMUNIKASI DAN INFORMASIb. sistem komunikasi dan informasic. sISTEM kOMUNIKASI dAN iNFORMASId. Sistem Komunikasi Dan Informasie. Sistem komunikasi dan informasi

28. Jika: Var X:String; dan nilai X diambil dari Edit1 maka penulisan yang tepat adalah...a. X:=Edit1.Text; d. X:=StrToFloat(Edit1.Text);b. X:=StrToStr(Edit1.Text); e. Edit1.Text:=FloatToStr(X);c. X:=StrToInt(Edit1.Text);

29. Jika: Var X:Integer; dan nilai X diambil dari Edit1 maka penulisan yang tepat adalah...a. X:=Edit1.Text; d. X:=StrToFloat(Edit1.Text);b. X:=StrToStr(Edit1.Text); e. Edit1.Text:=FloatToStr(X);c. X:=StrToInt(Edit1.Text);

30. Perhatikan potongan program berikut:Var A,B,X:Real;BeginA:=StrToFloat(Edit1.Text);B:=StrToFloat(Edit2.Text);X:= ( A * B ) / 2 ;....End;Untuk menampilkan hasil dari X pada Edit3 , koding pada titik-titik di atas yang benar adalah...a. Edit3.Text:=FloatToStr(X); d. Edit3.Text:=IntToStr(X);b. Edit3.Text:=RealToStr(X); e. Edit3.Text:=StrToInt(X);c. Edit3.Text:=StrToFloat(X);

31. Perhatikan potongan program berikut;Var JL,TH:integer;Status:string;beginStatus:=combobox1.Text;JL:=strtoint(edit1.Text);if status='Langganan' then beginTH := JL * 75 ;edit2.Text:=inttostr(TH);end else beginif JL > 100 then beginTH := JL * 85 ;edit2.Text:=inttostr(TH);end else begin

TH := JL * 100 ;edit2.Text:=inttostr(TH);end; end; end;

Page 5: Rangkuman soal TI SMK

Jika diinputkan Status: ‘Bukan langganan’ dan Jumlah Lembar (JL) yang difotokopi sebanyak 100 lembar, maka besar output: Jumlah Harga (TH) adalah...a. Rp 7.500 d. Rp 10.000b. Rp 8.500 e. Rp 11.000c. Rp 9.000

32. Suatu variabel yang berisi alamat memori dari suatu variabel lain disebut...a. Array d. Functionb. Pointer e. Atributc. Procedure

33. Yang tidak termasuk tipe pointer pada Delphi adalah...a. PAnsiChar d. PDateTimeb. PAnsiString e. Mousec. PExtended

34. Pointer yang menunjuk ke alamat data bertipe tanggal dan waktu adalah...a. PAnsiChar d. PDateTimeb. PAnsiString e. Mousec. PExtended

35. Operator pointer yang digunakan untuk memeriksa apakah dua variabel pointer menunjuk alamat yang sama atau tidak adalah... a. ^ c. < >b. = d. @

36. Perhatikan langkah-langkah modularisasi kode program berikut:1. hierarki chart2. logical main program3. desk checking algoritma 4. definisi masalah: input, proses, output5. pengelompokan kegiatan dalam modul6. merencanakan pseudocode bagi modulUrutan yang benar adalah...a. 1-2-3-4-5-6 c. 4-5-1-2-6-3 e. 6-4-5-1-2-3b. 6-5-4-3-2-1 d. 4-5-6-1-2-3

37. Pada langkah-langkah modularisasi kode program, kegiatan membuat logika dari Main Program dengan pseudocode, utamakan apa saja yang dikerjakan oleh program terlebih dahulu adalah...a. Pengelompokan kegiatan dalam modulb. Hierarki chartc. Logical main programd. Merancang pseudocode bagi module. Desk checking algoritma

38. Sedangkan kegiatan mengecek kebenaran algoritma dengan data yang tersedia minimal 2 data adalah...a. Pengelompokan kegiatan dalam modulb. Hierarki chartc. Logical main programd. Merancang pseudocode bagi module. Desk checking algoritma

39. Pencarian yang dilakukan secara teratur (secara sekuensial) dari awal sampai akhir data disebut...a. Pencarian linear c. Pencarian list e. Pencarian grafb. Pencarian biner d. Pencarian pohon

40. Pencarian data secara eliminasi biner berulang/ terus-menerus disebut...a. Pencarian linear c. Pencarian list e. Pencarian grafb. Pencarian biner d. Pencarian pohon

41. Perhatikan fakta-fakta algoritma pencarian berikut:1. Hanya bisa berfungsi pada data yang sudah terurut (sorted)2. Hanya bagus untuk dipakai pada data yang acak/tak terurut (unsorted)3. Merupakan salah satu contoh penerapan cara kerja dari konsep Divide and Conquer4. Kompleksitasnya adalah O(lg n)5. Kompleksitasnya adalah O(n)

Page 6: Rangkuman soal TI SMK

Fakta pencarian linear adalah...a. 1,5 c. 2,5 e. 1,3,4b. 2,3,5 d. 2,4

42. Fakta pencarian biner adalah...a. 1,5 c. 2,5 e. 1,3,4b. 2,3,5 d. 2,4

43. Perhatikan tahapan-tahapan metode Waterfall berikut:1. desain sistem2. analisa kebutuhan3. pengujian program4. penulisan kode program5. penerapan program dan pemeliharaanUrutan tahapan yang benar adalah...a. 1-2-3-4-5 c. 2-1-4-3-5 e. 4-3-1-2-5b. 5-4-3-2-1 d. 2-1-3-5-4

44. Tahapan akhir dimana sistem yang baru diuji kemampuan dan keefektifannya sehingga didapatkan kekurangan dan kelemahan sistem yang kemudian dilakukan pengkajian ulang dan perbaikan terhadap aplikasi menjadi lebih baik dan sempurna adalah tahap... a. Desain sistem c. Pengujian program e. Penerapan dan pemeliharaanb. Analisa kebutuhan d. Penulisan kode program

45. Perhatikan tahapan-tahapan metode Prototype berikut:1. produk rekayasa2. perbaikan prototype3. evaluasi pelanggan terhadap prototype4. bentuk prototype5. disain cepat6. pengumpulan kebutuhan dan perbaikanUrutan tahapan yang benar adalah...a. 1-2-3-4-5-6 c. 5-1-4-2-3-6 e. 3-5-6-4-2-1b. 6-5-4-3-2-1 d. 1-5-4-6-3-2

46. Perintah untuk menampilkan teks berwarna kuning pada Label1 adalah...a. Label1.Text = Yellow c. Label1.FontItalic = Yellow e. Label1.BackColor = Yellowb. Label1.Enabled = Yellow d. Label1.ForeColor = Yellow

47. Perintah untuk menonaktifkan Text2 adalah...a. Text2.Enabled = True c. Text2.BackColor = vbWhite e. Salah semuab. Text2.Enabled = False d. Text2.BackColor = vbButtonFace

48. Perintah Label3.Text = “Selamat ” & “Datang” akan menampilkan teks pada Label3 yaitu...a. Selamat c. Selamat dan Datang e. Selamat & Datangb. Datang d. Selamat Datang

49. Untuk menggabungkan 2 data String digunakan operator penggabungan...a. & c. @ e. a dan b benarb. + d. #

50. Variable yang dapat digunakan dalam satu form dinyatakan dalam deklarasi bertipe...a. Global c. International e. Externalb. Local d. Internal

Page 7: Rangkuman soal TI SMK

Pemrograman Desktop

Pilihlah satu jawaban yang paling benar!

1. Aplikasi yang dapat berjalan sendiri (independen) dan biasanya telah ditentukan dapat berjalan di platform atau operating system tertentu adalah pengertian dari…a. Web based programming d. Javab. Desktop based programming e. Oraclec. PHP

2. Contoh pemrograman berbasis Web adalah...a. Pascal d. NetBeansb. MySQL e. Oraclec. PHP

3. Contoh pemrograman berbasis Desktop adalah...a. Pascal d. NetBeansb. MySQL e. Oraclec. PHP

4. Yang tidak termasuk keunggulan pemrograman berbasis Desktop adalah...a. Dapat berjalan independen tanpa memerlukan web browserb. Tidak perlu koneksi internetc. Dapat dengan mudah memodifikasi settingannyad. Prosesnya lebih cepate. Biasanya memerlukan hardware dengan spesifikasi tinggi

5. Bahasa pemrograman yang digunakan pada QT Creator adalah...a. Java d. Basic b. C++ e. PHPc. Pascal

6. Pada QT Creator, bagian yang berfungsi sebagai tempat mendaftarkan subclass yang akan dipakai adalah...a. Headers d. Debugb. Sources e. Runc. Forms

7. Pada QT Creator, bagian yang berfungsi sebagai tempat menuliskan listing code adalah...a. Headers d. Debugb. Sources e. Runc. Forms

8. Sedangkan bagian yang berfungsi sebagai tempat untuk membuat tampilan aplikasi adalah...a. Headers d. Debugb. Sources e. Runc. Forms

9. Jika kita ingin membuat layout secara Vertikal pada Form, tool yang dipakai adalah...

a. v d.

b. e.

c.10. Jika kita ingin membuat layout secara Horizontal pada Form, tool yang dipakai adalah...

a. d.

b. v e.

c.11. Jika kita ingin membuat layout secara Grid pada Form, tool yang dipakai adalah...

a. d.

b. e.

c. v

Page 8: Rangkuman soal TI SMK

12. Misal kita sedang bekerja pada form “MainWindow” kemudian membuat form kedua dengan nama “SecDialog”. Agar form kedua bisa dibuka dari form pertama, subclass yang dideklarasikan adalah...a. #include <QMainWindow> ditulis di Headers MainWindowb. #include "secdialog.h" ditulis di Headers MainWindowc. #include <QMainWindow> ditulis di Headers SecDialogd. #include "secdialog.h" ditulis di Headers SecDialoge. #include <QMainWindow> ditulis di Sources SecDialog

13. Perintah untuk menampilkan form “SecDialog” adalah...a. #include "secdialog.h" d. ui->label->setText();b. secdialog -> show(); e. Close();c. secdialog -> hide();

14. Tool yang digunakan untuk membuat tab multiwindows adalah...

a. d.

b. v e.

c.15. Misal kita memiliki dua buah form: “Login” dan “DataPengguna” dengan form pertama yang pertama kali

muncul adalah “Login”. #include <QSplashScreen> dideklarasikan di...a. Headers login.h d. Sources datapengguna.cppb. Headers datapengguna.h e. Sources main.cppc. Sources login.cpp

16. QTimer::singleShot(3000,splash,SLOT(close())); fungsi coding tersebut adalah...a. Menampilkan SplashScreen setelah 3 detik d. Menutup SplashScreen setelah tampil 3 detikb. Menampilkan SplashScreen selama 30 detik e. Menutup SplashScreen setelah tampil 30 detikc. Menampilkan SplashScreen selama 300 detik

17. QTimer::singleShot(3000,&w,SLOT(show())); fungsi coding tersebut adalah...a. Menampilkan w setelah 3 detik d. Menutup w setelah tampil 3 detikb. Menampilkan w selama 30 detik e. Menutup w setelah tampil 30 detikc. Menampilkan w selama 300 detik

18. Coding untuk memilih gambar yang akan dijadikan SplashScreen adalah...a. QSplashScreen *splash=new QSplashScreen;b. splash->setPixmap(QPixmap("C:/latihanDB/lele.jpg"));c. splash->setPixmap(QPixmap("C:\latihanDB\lele.jpg"));d. splash->setPicture(QPicture("C:/latihanDB/lele.jpg"));e. splash->setPicture(QPicture("C:\latihanDB\lele.jpg"));

19. cara mendeklarasikan variabel bertipe Real pada QT Creator adalah...a. var pertama, kedua : real ; d. Float pertama, kedua ;b. pertama, kedua : real ; e. float pertama, kedua ;c. real pertama, kedua ;

20. Yang tidak termasuk tipe data pada deklarasi variable di QT Creator adalah...a. Char d. Voidb. Int e. String c. Real

21. Operasi aritmatika yang benar pada QT Creator adalah...a. hasil := pertama/kedua; d. float hasil = pertama-kedua;b. String hasil := pertama*kedua; e. float hasil = pertama^kedua;c. Float hasil = pertama+kedua;

22. Perhatikan potongan program berikut. Kesalahan terletak pada...1 void nilai_akhir::hitung(){2 QString a = ui->etugas->text();3 QString B = ui->eharian->text();4 QString c = ui->euts->text();5 QString d = ui->euas->text();6 Float tgs,hrn,uts,Uas ;7 tgs = a.toFloat();

Page 9: Rangkuman soal TI SMK

8 hrn = B.toFloat();9 uts = c.toFloat();10 Uas = d.toFloat();11 float r = (10% * tgs)+(20% * hrn)+(30% * uts)+(40% * uas);12 QString Hasil = QString::number(r);13 ui->rapot->setText(hasil); }a. 3,8,12 d. 5,6,8b. 6,11,13 e. 11,12,13c. 5,10,11

23. Perintah untuk menampilkan kotak dialog pesan pada gambar di bawah ini adalah...

a. QMessageBox::information(this,tr("Peringatan"),tr("Jangan nyontek!"));b. QMessageBox::question(this,tr("Peringatan"),tr("Jangan nyontek!"));c. QMessageBox::warning(this,tr("Peringatan"),tr("Jangan nyontek!"));d. QMessageBox::critical(this,tr("Peringatan"),tr("Jangan nyontek!"));e. QMessageBox::error(this,tr("Peringatan"),tr("Jangan nyontek!"));

24. Penulisan syntax class yang benar adalah...a. Public class siswa { } c. public class { } e. class siswa [ ]b. Public siswa { } d. public class siswa [ ]

25. Penulisan syntax static void yang benar adalah...a. Public static void (String[ ] args) { }b. Public static void main (String[ ] args) { }c. Public static void { }d. Static void main (String[ ] args) { }e. Public static void main {String[ ] args}

26. Cara untuk menyembunyikan detail informasi dari suatu class adalah...a. Hiding private c. Encapsulation e. Private int nrpb. Control private d. Akses private

27. Perintah yang berfungsi untuk memasukkan fungsi Scanner pada program adalah...a. Import.java.util.Scanner; c. new Scanner (System.in); e. nm = nama.nextLine( );b. Scanner nama d. System.out.println(“ “);

28. Perintah yang berfungsi untuk mengisi variable/ menerima input data bertipe String dari keyboard adalah...a. Import.java.util.Scanner; c. new Scanner (System.in); e. nm = nama.nextLine( );b. Scanner nama d. System.out.println(“ “);

29. Perintah yang berfungsi untuk menampilkan output ke layar adalah...a. print out c. system.out e. system.out.printb. system.out.println d. print.system.out

30. Tipe data yang menangani bilangan bulat adalah...a. char c. boolean e. intb. short d. float

31. Tipe data yang menangani bilangan desimal adalah...a. char c. boolean e. intb. short d. float

32. Compiler pada java yang menggunakan ekstensi .class adalah...a. Java c. Javac e. Javalb. Javah d. Javap

33. Setelah di-compile, program java akan dijalankan menggunakan perintah...a. Java c. Javac e. Javalb. Javah d. Javap

34. Fungsi komentar yang ada pada script java adalah...

Page 10: Rangkuman soal TI SMK

a. Keterangan yang berfungsi untuk menjelaskan kepada pembaca programb. Keterangan yang berfungsi untuk membaca programc. Keterangan yang memang harus dicantumkan pada scriptd. Hanya berupa keterangan sajae. Tidak berfungsi

35. Simbol yang digunakan untuk membuat komentar pada java adalah...a. /* c. \\ e. **b. { } d. //

36. Dari program di bawah ini, manakah program yang benar?a. //berkas : SelamatBelajar.java

public class SelamatBelajar{ public static void main string[] args{ System.out.println(“Selamat Belajar Java”); }}

b. /berkas : SelamatBelajar.java;public class SelamatBelajar{ public static void main (string[] args){ System.out.println(“Selamat Belajar Java”); }}

c. //berkas : SelamatBelajar.javapublic class SelamatBelajar{ public static void main (String[] args){ System.out.println(“Selamat Belajar Java”); }}

d. //berkas : SelamatBelajar.javaPublic class SelamatBelajar{ Public static void main (string[] args){ System.out.println(“Selamat Belajar Java”); }}

e. //berkas : SelamatBelajar.javapublic class SelamatBelajar{ public static void main (string[] args){ System.out.println(“Selamat Belajar Java”); }}

37. Manakah rumus percabangan yang benar pada pemrograman java?a. if (kondisi) c. if kondisi e. if {kondisi} then

{ ( ( Aksi1 Aksi1 Aksi1} ) ) else else else{ ( ( Aksi2 Aksi2 Aksi2} ) )

b. if {kondisi} d. if (kondisi) then( { Aksi1 Aksi1) } else else( { Aksi2 Aksi2) }

Perhatikan script berikut:

Page 11: Rangkuman soal TI SMK

1 private void btTambahActionPerformed(java.awt.event.ActionEvent evt){ 2 String nim = txNim.getText();3 String nama = txNama.getText();4 String alamat = txAlamat.getText();5 try6 {7 String dbname="jdbc:odbc:CobaDatabase";8 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");9 Connection con = DriverManager.getConnection (dbname, "Admin", "admin");10 Statement statement = con.createStatement();11 String sql="Insert into mahasiswa values ('"+nim+"', '"+nama+"', '"+alamat+"');";12 statement.executeUpdate(sql);13 statement.close();14 JOptionPane.showMessageDialog(null, "Data berhasil dimasukkan.", "Insert Data",JOptionPane.INFORMATION_MESSAGE);15 con.close();16 }17 catch (Exception e)18 {19 JOptionPane.showMessageDialog(null, "Error: "+e,"Gagal", JOptionPane.WARNING_MESSAGE);20 }21 }

38. Script yang berfungsi mengambil/ menerima input data dari user adalah...a. 1 c. 7 e. 11b. 2,3,4 d. 8

39. Script yang berfungsi untuk membuat koneksi ke database adalah...a. 7 c. 9 e. 11b. 8 d. 10

40. Script yang berfungsi untuk menjalankan perintah sql adalah...a. 10 c. 12 e. 14b. 11 d. 13

41. Pada tombol Cari, script yang berfungsi untuk menampilkan record pada Text Field jika data ditemukan adalah...a. String nim = txNim.getText();b. Connection con = DriverManager.getConnection(dbname,"Admin","admin");c. String sql="SELECT * FROM mahasiswa WHERE nim like '"+nim+"'";d. txNama.setText(rs.getString(2));e. JOptionPane.showMessageDialog(null,"Data ditemukan","Cari Data",

JOptionPane.INFORMATION_MESSAGE);42. Script yang berfungsi untuk memanggil record dari database adalah...

a. String nim = txNim.getText();b. Connection con = DriverManager.getConnection(dbname,"Admin","admin");c. String sql="SELECT * FROM mahasiswa WHERE nim like '"+nim+"'";d. txNama.setText(rs.getString(2));e. JOptionPane.showMessageDialog(null,"Data ditemukan","Cari Data",

JOptionPane.INFORMATION_MESSAGE);43. Script yang berfungsi untuk menghapus record dari database adalah...

a. String nim = txNim.getText();b. Connection con = DriverManager.getConnection(dbname,"Admin","admin");c. String sql="DELETE FROM mahasiswa WHERE NIM LIKE '"+nim+"'";d. txNim.setText(""); txNama.setText(""); txAlamat.setText("");e. JOptionPane.showMessageDialog(null,"Data berhasil dihapus","Hapus

Data", JOptionPane.INFORMATION_MESSAGE);44. Operator aritmatika pada java untuk operasi perkalian adalah...

a. % c. * e. /

Page 12: Rangkuman soal TI SMK

b. × d. :45. Operator aritmatika pada java untuk operasi pembagian adalah...

a. % c. * e. /b. × d. :

46. Operator aritmatika pada java untuk operasi sisa bagi adalah...a. % c. * e. /b. × d. :

47. Perusahaan yang pertama kali mengembangkan bahasa pemrograman Java adalah...a. Microsoft c. Nokia e. Borlandb. Sun Microsystem d. Apple

48. Yang tidak termasuk kelebihan bahasa pemrograman java dibanding dengan bahasa pemrograman lain adalah..a. Multiplatform c. Bergaya C++ e. Perpustakaan kelas yang

lengkapb. OOP d. Penggunaan memori yang banyak

49. Yang tidak termasuk dalam platform java adalah..a. JVM c. JDK e. JKWb. JRE d. SDK

50. Script yang berfungsi untuk menampilkan kotak dialog berisi pesan Peringatan adalah...a. javax.swing.JOptionPane.MessageDialog(this,"Field usia tidak boleh kosong","Peringatan",

javax.swing.JOptionPane.WARNING_MESSAGE);b. javax.swing.JOption.showMessageDialog(this,"Field usia tidak boleh kosong","Peringatan",

javax.swing.JOption.WARNING_MESSAGE);c. javax.swing.JOptionPane.showMessageDialog(this," Field usia tidak boleh kosong","Peringatan",

javax.swing.JOptionPane.WARNING_MESSAGE);d. javax.swing.JOptionPane.showMessageBox(this," Field usia tidak boleh kosong","Peringatan",

javax.swing.JOptionPane.WARNING_MESSAGE);e. javax.swing.JOptionPane.showMessageDialog(this," Field usia tidak boleh kosong","Peringatan",

javax.swing.OptionPane.ERROR_MESSAGE);

Page 13: Rangkuman soal TI SMK

Basis dataPilihlah satu jawaban yang paling benar!

1. Sekumpulan fakta-fakta dan angka yang secra relatif tidak berarti bagi pemakai adalah…a. Data d. DBMSb. Informasi e. ODBCc. Database

2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa penulangan (redundansi) yang tidak perlu untuk memenuhi berbagai kebutuhan adalah…a. Data d. DBMSb. Informasi e. ODBCc. Database

3. Hubungan antar table yang merepresentasikan hubunga antar obyek di dunia nyata adalah…a. Relasi d. Domain Name System (DNS)b. Atribut (field) e. Kardinalitas/ Derajat Relasic. Record/ Tuple

4. Kumpulan field data yang mewakili satu entitas secara lengkap adalah…a. Relasi d. Domain Name System (DNS)b. Atribut (field) e. Kardinalitas/ Derajat Relasic. Record/ Tuple

5. Ciri-ciri kualitatif yang dimiliki oleh suatu obyek yang mencerminkan sifat-sifat dari obyek tersebut adalah…a. Relasi d. Domain Name System (DNS)b. Atribut (field) e. Kardinalitas/ Derajat Relasic. Record/ Tuple

Perhatikan kasus berikut:Sebuah universitas akan membuat suatu sistim informasi akademik, sebelum dibangun perangkat lunak sistim informasi tersebut dilakukan analisis berbasis obyek data. Universitas tersebut mempunyai beberapa fakultas, dimana dalam setiap fakultas dapat mempunyai satu atau lebih jurusan. Sebaliknya suatu jurusan hanya dapat menjadi bagian dari satu fakultas saja. Setiap jurusan mempunyai beberapa orang dosen, dengan ketentuan seorang dosen hanya boleh terdaftar pada satu jurusan. Dosen – dosen tersebut boleh mengajar banyak mata kuliah sekaligus, tetapi bisa saja ada dosen yang tidak (belum diijinkan) untuk mengajar satu mata kuliah pun. Dalam perkuliahan, setiap mata kuliah boleh diajarkan oleh beberapa dosen dan tidak boleh ada mata kuliah yang belum ditentukan dosen pengampunya. Sementara mata kuliah – mata kuliah tersebut pada umumnya dapat diambil oleh banyak mahasiswa, tetapi dapat juga tidak diikuti oleh mahasiswa satu pun. Begitu juga sebaliknya, mahasiswa dapat mengambil mata kuliah atau tidak sama sekali.

6. Dari kasus di atas, identifikasi kardinalitas yang tidak benar adalah…a. Universitas memiliki banyak fakultasb. Fakultas memiliki satu atau banyak jurusanc. Satu jurusan hanya dapat menjadi bagian dari 1 fakultasd. Tidak ada mata kuliah yang tidak diikuti oleh mahasiswa satu pune. Suatu mata kuliah boleh tidak diambil mahasiswa

7. ERD yang tidak benar dari kasus di atas adalah…

a.

Page 14: Rangkuman soal TI SMK

b. v

c.

d.

e.8. Suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam

suatu organisasi adalah…a. ODBC d. Entity Relationship Diagramb. DBMS e. Context Diagramc. Normalisasi

9. Normalisasi bentuk normal kedua adalah…a. Menghilangkan perulangan grup d. Menghilangkan ketergantungan multivalue b. Menghilangkan ketergantungan sebagian c. Menghilangkan anomali-anomali yang tersisac. Menghilangkan ketergantungan transitif

10. Bentuk normal di mana atribut bukan kunci bergantung penuh hanya pada kuncinya adalah…a. Bentuk tidak normal d. Bentuk normal ketigab. Bentuk normal pertama e. BCNF (Boyce Code Normal Form)c. Bentuk normal kedua

11. Saat ini, arsitektur client-server yang banyak digunakan dalam industri disebut…a. One tier architecture d. Four tier architectureb. Two tier architecture e. Five tier architecturec. Three tier architecture

12. Pada arsitektur tersebut, yang dilakukan oleh server adalah...a. Bertindak sebagai Conduit of Passing d. Mengirim aturan bisnisb. Memainkan peranan yang dominan e. Mengakses data dari hostc. Memainkan peranan sebagai penengah

13. Pada arsitektur three tier, yang tidak dilakukan oleh server adalah...a. Bertindak sebagai Conduit of Passing d. Mengirim aturan bisnisb. Memainkan peranan yang dominan e. Mengakses data dari hostc. Memainkan peranan sebagai penengah

14. Kumpulan data yang digunakan bersama-sama dan memiliki hubungan logis fisik tersebar di jaringan komputer adalah...a. Database terdistribusi d. Oracle b. DBMS terdistribusi e. ODBC

Page 15: Rangkuman soal TI SMK

c. Management Database15. Perangkat lunak sistem yang mengatur basis data terdistribusi dan membuat distribusi data secara transparan

adalah...a. Database terdistribusi d. Oracle b. DBMS terdistribusi e. ODBCc. Management Database

16. Contoh address yang benar untuk mengakses situs dari komputer server pada jaringan local adalah...a. http://localhost/folder/index.phpb. http://ip-address server/localhost/folder/index.phpc. http://192.168.17.62/eskom/basdat/index.phpd. http://192.168.17.1/localhost/onshop/index.phpe. http://localhost /dvdindostore/index.php

17. Standar terbuka untuk konektivitas antar mesin basis data adalah..a. Pengertian ODBC d. Tujuan dibuatnya DBMSb. Pengertian DBMS e. Komponen ODBCc. Tujuan dibuatnya ODBC

18. Memaksimumkan kemampuan sebuah aplikasi untuk mengakses sistem manajemen basis data adalah...a. Pengertian ODBC d. Tujuan dibuatnya DBMSb. Pengertian DBMS e. Komponen ODBCc. Tujuan dibuatnya ODBC

19. Sekumpulan panggilan fungsi, kode-kode kesalahan dan sintaksis SQL yang mendefinisikan bagaimana data dalam sebuah DBMS diakses adalah..a. Pengertian ODBC d. Tujuan dibuatnya DBMSb. Pengertian DBMS e. Komponen ODBCc. Tujuan dibuatnya ODBC

20. Data didistribusikan pada beberapa komputer dengan menggunakan DBMS yang berbeda adalah...a. Sifat Homogen database terdistribusib. Sifat Heterogen database terdistribusi

21. Kebalikannya adalah...a. Sifat Homogen database terdistribusib. Sifat Heterogen database terdistribusi

22. Pada SQL, klausa “where” tidak bisa untuk...a. Menampilkan data d. Membuat datab. Menghapus data e. Pengelompokkan datac. Mengedit data

23. Penempatan klausa “where” yang tidak tepat adalah...a. SELECT * FROM WHERE b. SELECT * pengarang, COUNT(*) FROM bukuc. SELECT tahun, sum(harga) AS total_harga FROM buku GROUP BY tahund. SELECT nama,alamat FROM pelanggan WHERE nama REGEXP ‘o’ ORDER BY nama;e. SELECT nama,tgl_lahir FROM pelanggan WHERE nama LIKE ‘%anto’;

24. Default urutan pensortiran ascending adalah.. (kecuali)a. Nilai-nilai numeric yang pertama ditampilkan adalah nilai terendah (contoh: 1 sampai 999)b. Nilai-nilai karakter ditampilkan dalam urutan alfabetikal terbalik (contoh: Z pertama dan A terakhir)c. Nilai-nilai tanggal yang pertama ditampilkan adalah nilai pertama (contoh: 01-Jan-92 sebelum 01-Jan-

95)d. Nilai-nilai null ditampilkan terakhir

Perhatikan unsur-unsur pengelompokan dan pengurutan data berikut:

1. MIN( ) 4. SUM( ) 7. HAVING 10. BETWEEN2. MAX( ) 5. COUNT( ) 8. WHERE 11. IN3. AVG( ) 6. ORDER BY 9. COMPARISON 12. LIKE / NOT LIKE

25. Aggregate Function adalah...a. 11-12 d. 1-6

Page 16: Rangkuman soal TI SMK

b. 7-10 e. 1-5c. 5-6

26. Menyeleksi data berdasarkan kriteria tertentu, dimana kriteria berdasarkan berupa fungsi aggregat adalah...a. 9 d. 6b. 10 e. 12c. 7

27. Berfungsi untuk membandingkan dua nilai dan hasil yang diperoleh berupa nilai logika adalah...a. 9 d. 6b. 10 e. 12c. 7

28. Contoh perintah SQL yang benar untuk memperbarui data pada table adalah...a. Insert into customer values(‘C-065’.’PT Samudra’.’Garut’)b. Update barang set stok = ‘50’ where kdbarang = ‘B-124’c. Delete from penjualan where nofaktur = ‘P-005’d. Select tglfaktur from penjualan where kdcustomer = ‘C-109’e. Select namacustomer from customer where kota = ‘Bandung’ or kota = ‘Jakarta’

29. Perintah SQL yang salah adalah...a. Insert into customer values(‘C-065’.’PT Samudra’.’Garut’)b. Update barang set stok = ‘50’ where kdbarang = ‘B-124’c. Delete from penjualan where nofaktur = ‘P-005’d. Select tglfaktur from penjualan where kdcustomer = ‘C-109’e. Select namacustomer from customer where kota = ‘Bandung’ or kota = ‘Jakarta’

30. Jika membuat table menggunakan MySQL Xampp, cara menentukan Primary Key adalah dengan mengisi PRIMARY di kolom...a. Values d. Attributesb. Default e. Indexc. Collation

31. Perintah untuk membuat password “admin” terenkripsi MD5 pada MySQL Xampp adalah...a. INSERT INTO `login` (`username`, `password`) VALUES ('admin', MD5('admin'));b. INSERT INTO `login` (`username`, `password`) VALUES (MD5('admin'), 'admin');c. INSERT INTO `login` (`username`, MD5(`password`)) VALUES ('admin', 'admin');d. INSERT INTO `login` (MD5(`username`), `password`) VALUES ('admin', 'admin');

32. Password hasil yang mungkin dari perintah di atas adalah...a. firnsb. adminc. €9$ó7Rö}d. 21232f297a57a5a743894a0e4a801fc3e. 32f217a5a794a02438325e4a801f297af97438a57ac325a794a0e4a801fc3212

33. Perintah untuk menambah field tanggal_kadaluarsa ke table barang adalah...a. Update barang set tanggal_kadaluarsa date b. Alter table barang add tanggal_kadaluarsa intc. Alter table barang drop tanggal_kadaluarsa intd. Alter table barang add tanggal_kadaluarsa datee. Alter table barang drop tanggal_kadaluarsa date

34. Perintah untuk menghapus field ukuran_buku dari table buku adalah...a. Drop table bukub. Drop ukuran_bukuc. Alter table buku drop ukuran_buku varchard. Alter table buku drop column ukuran_bukue. Alter table buku add ukuran_buku varchar

35. Yang tidak terkandung dalam Constraint adalah...a. NOT NULL c. UNIQUE e.

CHECKb. DEFAULT d. COLLATE

36. Constraint yang digunakan untuk memastikan tidak ada data ganda dalam kolom adalah...

Page 17: Rangkuman soal TI SMK

a. NOT NULL c. UNIQUE e. CHECK

b. DEFAULT d. COLLATE37. Pada My SQL Xampp, untuk membuat Constraint UNIQUE terdapat pada kolom...

a. Values d. Attributesb. Default e. Indexc. Collation

38. Agar data pada Ms. Excel bisa diimport ke MySQL Xampp, terlebih dahulu file Excel harus disimpan dalam format...a. XML d. CSV (Macintosh)b. PDF e. CSV (MS-DOS)c. CSV (Comma delimited)

39. Sementara pada MySQL Xampp, Format yang kita pakai adalah...a. CSV d. MediaWiki Tableb. CSV using LOAD DATA e. SQLc. ESRI Shape File

40. Untuk membuat ODBC pada Windows 32 bit adalah...a. Control panel > ODBC Data Sourcesb. Control panel > BDE Administrator > ODBC Data Sourcesc. Control panel > Administrative Tools > ODBC Data Sourcesd. C:\Windows\SysWow64\odbcad32.exee. Computer > Properties > Advanced system setting > Environment Variables >

System Variables: Path41. Saat membuat ODBC dengan MySQL ODBC 3.51 Driver pada komputer Server, “root”

diisikan pada...a. Data Source Name d. Userb. Description e. Passwordc. Server

42. Sementara “localhost” diisikan pada...a. Data Source Name d. Userb. Description e. Passwordc. Server

43. Sedangkan pada komputer Client, agar database pada server dapat diakses hal yang harus diperhatikan adalah...a. DSN harus sama, Server diisi “localhost”, User diisi “root”, Password dikosongkan,

Database disamakanb. DSN boleh berbeda, Server diisi IP address komputer server, User diisi “root”,

Password dikosongkan, Database boleh berbedac. DSN harus sama, Server diisi IP address komputer server, User diisi dengan yang

user yang sudah terdaftar di komputer server, Password dikosongkan, Database disamakan

d. DSN harus sama, Server diisi IP address kopmuter server, User dan Password diisi dengan yang user yang sudah terdaftar di komputer server, Database disamakan

e. DSN boleh berbeda, Server diisi IP address kopmuter server, User dan Password diisi dengan yang user yang sudah terdaftar di komputer server, Database disamakan

44. Perintah untuk mengedit field “satuan” menjadi “satuan_barang” pada tabel barang adalah...a. Alter table barang add satuan_barang varcharb. Alter table barang drop satuan_barang varcharc. Alter table barang modify column satuan_barang varchar (15)d. Alter table barang change column satuan satuan_barang varchar (15)e. Alter table barang change column satuan_barang satuan varchar (15)

45. Perintah untuk menambahkan Primary Key kode_ponsel pada tabel ponsel yang benar adalah...a. Alter table ponsel constraint pk primary key (kode_ponsel)

Page 18: Rangkuman soal TI SMK

b. Alter table kode_ponsel add constraint primary key (ponsel)c. Alter table ponsel add constraint primary key (kode_ponsel)d. Alter table ponsel add constraint pk primary key (kode_ponsel)e. Alter table ponsel add constraint pk primarykey(kode-ponsel)

46. Contoh perintah yang benar untuk menghapus primary key yang dibuat dengan menggunakan alter table adalah...a. Alter table elektronik drop primary keyb. Alter table elektronik drop constraint pkc. Alter table furniture drop pk primary keyd. Alter table laptop drop primarykeye. Alter table pelanggan drop constraint primary key

Perhatikan tabel berikut:1. Tabel Film

Kode_film Jenis Judul_film Jml_keping

Jml_film

A01 Action Mission Impossible: Rogue Nation 2 12K01 Komedi Comic 8 2 10D01 Drama Habiebie Ainun 2 5H01 Horror Insidious Chapter 3 2 10E01 Anime Naruto Shippuuden 1 20

2. Tabel Jenis_FilmJenis Harga_filmAction 15000Horror 15000Drama 10000Komedi 13000Anime 11000

47. Perintah untuk menampilkan harga_film berjudul Insidious Chapter 3 adalah...a. Select harga_film from jenis_film where kode_film = ‘H01’b. Select harga_film from jenis_film inner join film on jenis_film.jenis = film.jenisc. Select jenis_film.harga_film from jenis_film inner join film on jenis_film.jenis =

film.jenisd. Select jenis_film.harga_film from jenis_film inner join film on jenis_film.jenis =

film.jenis where kode_film = ‘H01’e. Select harga_film.jenis_film from jenis_film inner join film on jenis.jenis_film =

jenis.film where kode_film = ‘H01’48. Perintah untuk menampilkan judul_film yang harga_film nya 15000 adalah...

a. Select judul_film from film where harga_film = ‘15000’b. Select judul_film from film inner join jenis_film on film.jenis = jenis_film.jenisc. Select film.judul_film from film inner join jenis_film on film.jenis = jenis_film.jenisd. Select film.judul_film from film inner join jenis_film on film.jenis = jenis_film.jenis

where harga_film = ‘15000’e. Select judul_film.film from film inner join jenis_film on jenis.film = jenis.jenis_film

where harga_film = ‘15000’49. Perintah untuk menampilkan judul_film dan harga_film yang harga_film nya di atas

11000 diurut berdasarkan judul_film adalah...a. Select judul_film,harga_film where harga_film > 11000 order by judul_filmb. Select judul_film,harga_film from film inner join jenis_film on film.jenis =

jenis_film.jenis where harga_film > 11000c. Select film.judul_film,jenis_film.harga_film from film inner join jenis_film on

film.jenis = jenis_film.jenis where harga_film > 11000 order by judul_film

Page 19: Rangkuman soal TI SMK

d. Select jenis_film.harga_film, film.judul_film from film inner join jenis_film on jenis_film.jenis = film.jenis where harga_film > 11000 sort by judul_film

e. Select judul_film.film, harga_film.jenis_film from film inner join jenis_film on jenis.film = jenis.jenis_film where harga_film > 11000 order judul_film

50. Perintah untuk menambahkan kunci tamu jenis pada table film adalah...a. Alter table film add constraint fk foreign key (jenis) references jenis_film(jenis) on

update cascade on delete no actionb. Alter table film add constraint foreign key (jenis) references jenis_film(jenis) on

update cascade on delete on actionc. Alter table film add foreign key (jenis) references jenis_film(jenis) on update on

cascade on delete on actiond. Alter table film add constraint fk primary key(jenis) references jenis_film(jenis) on

update on cascade on delete on actione. Alter table film drop foreign key fk;

Selamat mengerjakan..