# Navigation

Pembahasan Contoh Soal Tes Kompetensi Bidang (TKB) Teknik Informatika Untuk CPNS

Pembahasan Contoh Soal Tes Kompetensi Bidang (TKB) Teknik Informatika Untuk CPNS

Pembahasan Soal No. 1
Pertama kita buat dulu database dan tabelnya, sebagai contoh saya membuat database dengan nama 'maba' dan tabel 'calon_mahasiswa'.

CREATE DATABASE maba;
--membuat database dengan nama maba
-- membuat tabel dengan nama calon_mahasiswa
CREATE TABLE `calon_mahasiswa` (
  `no_pendaftaran` int(11) NOT NULL,
  `nama` varchar(250) DEFAULT NULL,
  `jkl` varchar(2) DEFAULT NULL,
  `telepon` varchar(15) DEFAULT NULL,
  `kota` varchar(50) DEFAULT NULL,
  `tgl` datetime DEFAULT NULL,
  `alamat` varchar(250) NOT NULL
  `prodi` varchar(150) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

ALTER TABLE `calon_mahasiswa`
  ADD PRIMARY KEY (`no_pendaftaran`);

ALTER TABLE `calon_mahasiswa`
  MODIFY `no_pendaftaran` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;


Setelah membuat database dan tabelnya selanjutnya kita membuat aplikasi untuk menginput data ke database. Sebagai contoh kali ini saya akan menggunakan PHP untuk membuat aplikasi input datanya.
 

Pembahasan Soal No. 2
Soal nomor 2 merupakan sebuah perulangan menggunakan FOR. Perulangan FOR tersebut memiliki parameter berupa variabel 'nomor' dengan nilai 0 (nol) dan selama 'nomor' masih kurang dari 10 (sepuluh) maka perulangan akan terus dilakukan. Didalam perulangan terdapat perintah IF untuk mengecek apakah nilai dari variabel 'nomor' merupakan bilangan genap atau bukan. Jika bilangan genap maka akan ditampilkan di layar tetapi jika sebaliknya maka nilai variabel 'nomor' tidak akan ditampilkan di layar. Karena menggunakan perintah System.out.println() maka setiap kali data ditampilkan ke layar maka akan disertai dengan baris baru. Jadi hasil yang akan ditampilkan di layar monitor yaitu:

2
4
6
8
perulangan for


Pembahasan Soal No. 3
a. Menampilkan semua field pada semua table mata kuliah yang mempunyai sks sama dengan 3 dan urutkan secara menurun berdasarkan nama mata kuliah

SELECT * FROM Matakuliah WHERE sks = '3' ORDER BY nama_matakuliah DESC;

b. Menampilkan nim, nama dan nama mata kuliah dari mahasiswa yang memiliki nilai final lebih besar dari 50.

SELECT nim, nama, nama_mk FROM Mahasiswa, Matakuliah, Prestasi WHERE Mahasiswa.nim=Prestasi.nim AND Prestasi.kode_mk=Matakuliah.kode_mk AND Prestasi.nil_fin>50;

c. Menampilkan nim, nama, nama mata kuliah dan nama dosen dari mahasiswa yang mengambil mata kuliah Basis Data.

SELECT nim, nama, nama_mk, nama_dosen FROM Mahasiswa, Matakuliah, Dosen, Prestasi WHERE Matakuliah.nama_mk = "Basis Data" AND Mahasiswa.nim = Prestasi.nim AND Prestasi.kode_dosen = Dosen.kode_dosen AND Prestasi.kode_mk = Matakuliah.kode_mk;

d. Menambahkan atribut agama pada tabel Dosen

ALTER TABLE Dosen ADD(AGAMA varchar(16));

YANG LAIN: