Anda di halaman 1dari 91

BUNDEL SOAL

SISTEM DAN TEKNOLOGI INFORMASI


SEMESTER 3
TAHUN 2016/2017

Are you ready, kids?


Aye-aye, Captain!
I cant hear you!
AYE-AYE, CAPTAIN!
Ooooooo
- SpongeBob SquarePants Theme Song

Halaman |2

Daftar Isi
II2110 Matematika STI ............................................................................................................................ 4
UTS Semester I 2010/2011............................................................................................................... 5
UTS Semester I 2011/2012 Bagian Teori Graph ............................................................................ 6
UTS Semester I 2011/2012............................................................................................................... 9
UTS Semester I 2015/2016............................................................................................................. 10
UAS Semester I 2009/2010 ............................................................................................................ 12
UAS Semester I 2010/2011 ............................................................................................................ 14
UAS Semester I 2011/2012 ............................................................................................................ 15
UAS Semester I 2015/2016 ............................................................................................................ 16
II2111 Probabilitas dan Statistika.......................................................................................................... 18
UTS Semester I 2008/2009............................................................................................................. 19
UTS Semester I 2009/2010............................................................................................................. 20
UTS Semester I 2010/2011............................................................................................................. 21
UTS Semester I 2011/2012............................................................................................................. 22
UAS Semester I 2009/2010 ............................................................................................................ 23
UAS Semester I 2010/2011 ............................................................................................................ 24
UAS Semester I 2011/2012 ............................................................................................................ 25
EL2142 Sistem Digital dan Mikroprosesor ............................................................................................ 26
UTS Semester I 2006/2007............................................................................................................. 27
UTS Semester I 2007/2008............................................................................................................. 28
UTS 1 Semester I 2009/2010 .......................................................................................................... 30
UTS 2 Semester I 2009/2010 .......................................................................................................... 32
UTS Semester I 2015/2016............................................................................................................. 34
UAS Semester I 2006/2007 ............................................................................................................ 35
UAS Semester I 2007/2008 ............................................................................................................ 38
UAS Semester I 2011/2012 ............................................................................................................ 42
EL2195 Praktikum Sistem Digital .......................................................................................................... 45
UAS Semester I 2009/2010 ............................................................................................................ 46
UAS Semester I 2010/2011 ............................................................................................................ 50
UAS Semester I 2011/2012 ............................................................................................................ 53
IF2111 Algoritma dan Stuktur Data ...................................................................................................... 55
UTS Semester I 2009/2010............................................................................................................. 56
UTS Semester I 2010/2011............................................................................................................. 58

Halaman |3
UTS Semester I 2011/2012............................................................................................................. 59
UAS Semester I 2009/2010 ............................................................................................................ 60
UAS Semester I 2010/2011 ............................................................................................................ 63
UAS Semester 1 2011/2012 ........................................................................................................... 64
IF2140 Pemodelan Basis Data ............................................................................................................... 66
UTS Semester I 2005/2006............................................................................................................. 67
UTS Semester I 2007/2008............................................................................................................. 67
UTS Semester I 2008/2009............................................................................................................. 68
UTS Semester II 2009/2010............................................................................................................ 71
UTS Semester II 2011/2012............................................................................................................ 73
UTS Semester II 2011/2012............................................................................................................ 75
UTS Semester II 2013/2014............................................................................................................ 76
UTS Semester I 2015/2016............................................................................................................. 78
UAS Semester I 2007/2008 ............................................................................................................ 81
UAS Semester II 2008/2009 ........................................................................................................... 82
UAS Semester II 2009/2010 ........................................................................................................... 83
UAS Semester II 2010/2011 ........................................................................................................... 85
UAS Semester II 2013/2014 ........................................................................................................... 86
UAS Semester I 2015/2016 ............................................................................................................ 88

Catatan: Mata kuliah TI3005 Organisasi dan Manajemen Perusahaan Industri tidak mengadakan UTS
maupun UAS

II2110
Matematika STI

Halaman |5
UTS Semester I 2010/ 2011

UJIAN TENGAH SEMESTER


Waktu 100 menit

1. Dari data mahasiswa Komputer satu angkatan, 191 orang, didapat data yang mengambil tiga
matakuliah Struktur Diskrit, OOP, dan Etika sebagai berikut:
-

Struktur Diskrit, 65 orang.

OOP, 76 orang.

Etika, 63 orang.

Struktur Diskrit dan OOP, 36 orang.

Struktur Diskrit dan Etika, 20 orang.

OOP dan Etika, 18 orang.

Yang mengambil ketiganya sekaligus, 10 orang.


a. Berapakah yang mengambil OOP atau Etika (atau keduanya), tetapi tidak mengambil Struktur
Diskrit?
b. Berapakah yang tidak mengambil satupun dari ketiga matakuliah tersebut?

2. Gunakan argument yang valid untuk melakukan penalaran deduktif dari kalimat argumentatif
berikut:
Amir akan mendapat nilai bagus jika belajar bersungguh-sungguh. Jika mendapat nilai bagus,
maka Amir akan lulus ujian. Amir akan mendapat hadiah netbook jika berhasil lulus ujian.
Buat kesimpulan dan buktikan kesimpulan Anda, jika ternyata:
a. Amir belajar bersungguh-sungguh.
b. Amir mendapat hadiah netbook.
c. Amir tidak mendapat hadiah netbook.
3. Pada suatu darmawisata perusahaan yang berangkat mengguntkan tujuh bis, ada tiga orang
sahabat (X, Y, dan Z) yang turut serta. Total tempat duduk yang tersedia dalam bis-bis yang
digunakan cukup untuk seluruh peserta darmawisata tersebut. Jika pembagian tempat duduk dan
bis yang digunakan peserta dilakukan dengan undian secara acak dan adil (FAIR), hitunglah
banyaknya cara (bukan probability) yang berikut ini:
a. Dua orang sahabat (tidak X, Y, dan Z sekaligus) dalam satu bis yang sama?
b. Ketiganya berbeda bis (tidak ada yang berada dalam satu bis yang sama)?
4. Tentukan jumlah simpul pada graf sederhana bila memunyai 20 buah sisi dan tiap simpul
berderajat sama.

Halaman |6
UTS Semester I 2011/ 2012 Bagian Teori Graph

UTS STRUKTUR DISKRIT


Bagian Teori Graph
17 Oktober 2011

1. Minimal dapat dikatakan sebuah graf jika memiliki


2. Sebuah vertek/titik/node pada graf yang tidak memiliki sisi ke vertek lainnya disebut
3. Apakah graf pada gambar dibawah ini adalah graf lengkap? Berikan alasannya

4. Apakah graf lengkap adalah juga merupakan graf teratur?


Apakah graf lingkaran adalah juga merupakan graf teratur?
5. Apakah graf dibawah ini merupakan graf bipartite? Berikan alasannya
Apakah graf dibawah juga merupakan graf planar?

6. Graf sederhana yang setiap simpulnya mempunyai sisi ke semua simpul lainnya adalah graf
7. Graf yang setiap simpulnya mempunyai derajat yang sama disebut
8. Apakah graf dibawah ini adalah graf terhubung?

9. Apakah graf pada gambar dibawah ini adalah graf lengkap? Berikan alasannya

Halaman |7

10. Apakah graf dibawah ini adalah graf terhubung?

11. Apakah yang disebut graf terhubung lemah?


12. Berapakah jumlah wilayah/region pada soal nomor 5? Cara mencarinya dengan menggunakan
rumus, yaitu
13. Apakah graf dibawah ini adalah graf isomorfik?... Tuliskan kedua matriks ketetanggannya

14. Walau cara visual masih tetap perlu, berikan tiga syarat untuk menentukan isomorfik
15. Derajat dari setiap gelung adalah
16. Graf yang dapat digambarkan pada bidang datar dengan sisi-sisi yang tidak saling memotong
disebut sebagai graf planar, hasil graf yang tidak saling memotong tersebut dinamakan juga graf
bidang. Apakah K6 adalah graf planar? (yang dapat menghasilkan graf bidang)
17. Apakah graf pada nomor 9 bisa disebut sebagai graf sederhana? Berikan alasannya
18. Apakah graf dibawah ini adalah graf terhubung?

Halaman |8

19. Apakah graf dibawah ini adalah graf bipartite?..., berapakah m dan n nya bila ada? Km,n

20. Apakah artinya sebuah jembatan (bridge) atau cut-set itu? Boleh jelaskan memakai gambar

Halaman |9
UTS Semester I 2011/2012

UTS STRUKTUR DISKRIT


19 Oktober 2011
100 menit

1. Dari data mahasiswa Komputer satu angkatan, 191 orang, didapat data yang mengambil tiga
matakuliah Struktur Diskrit, OOP, dan Etika sebagai berikut:
-

Struktur Diskrit, 65 orang.

OOP, 76 orang.

Etika, 63 orang.

Struktur Diskrit dan OOP, 36 orang.

Struktur Diskrit dan Etika, 20 orang.

OOP dan Etika, 18 orang.

Yang tidak mengambil satupun dari ketiga matakuliah tersebut, 53 orang.


a. Berapakah yang mengambil OOP atau Etika (atau keduanya), tetapi tidak mengambil Struktur
Diskrit?
b. Berapakah yang mengambil ketiga matakuliah tersebut sekaligus?

2. Gunakan argument yang valid untuk melakukan penalaran deduktif dari kalimat argumentatif
berikut:
Fulan akan mendapat uang honor lebih jika bekerja lembur. Jika mendapat uang honor lebih, maka
Fulan akan membeli bahan baju. Fulan akan menjahitkan bahan baju jika sudah membeli bahan
baju. Setelah bahan abju selesai dijahit, maka Fulan akan mempunyai baju baru.
Buat kesimpulan dan buktikan kesimpulan Anda, jika ternyata:
a. Fulan tidak mempunyai baju baru
b. Fulan mempunyai baju baru
c. Fulan bekerja lembur
3. Buktikan dan beri alasan masing-masing soal yang berikut ini (dalam pembuktian dua kolom)
a. Premis:

b. Premis:

P (Q R)
Q ~ R
Q

~ P (Q ~ R )
~ S Q
~T
P T

Konklusi:

Konklusi:

~P

RS

H a l a m a n | 10

UTS Semester I 2015/ 2016

UJIAN TENGAH SEMESTER


MATEMATIKA STI II2110
2015
1. Misalkan A = {1, 2, 3, 4}, sebutkan contoh relasi R pada himpunan A yang bersifat refleksif!
2. Apakah relasi habis membagi pada himpunan bilangan bulat positif bersifat transitif? Mengapa?
3. Diberikan fungsi f(x) = x 1 dan g(x) = x2 + 1. Tentukan f o g dan g o f!
4. Gunakan induksi matematika untuk membuktikan bahwa jumlah n buah bilangan ganjil positif
pertama adalah n2!
5. Dengan menggunakan induksi matematika, buktikan pernyataan Untuk membayar biaya pos
sebesar n sen (n 8) selalu dapat digunakan hanya perangko 3 sen dan perangko 5 sen benar.
6. Diberikan dua buah bilangan bulat tak-negatif m dan n (m n). Algoritma Euclidean berikut
mencari pembagi bersama terbesar dari m dan n. Dengan menggunakan keterangan dari prosedur
dan deklarasi yang sudah diberikan, buatlah bagian algoritma dari table di bawah ini tanpa
menambahkan variabel lain.
procedure Euclidean (input m, n : integer,
output PBB : integer)
{ Mencari PBB(m , n) dengan syarat m dan n bilangan tak negatif
dan m n
Masukan : m dan n , m n dan n 0
Keluaran : PBB(m ,n)
}
Deklarasi
r : integer
Algoritma :

7.
8.

Buktikan dengan induksi matematika bahwa n4 4n3 habis dibagi 3 untuk semua bilangan
bulat n 2!
Apakah bilangan-bilangan bulat berikut relatif prima? Berikan alasannya.
a. 36 dan 6
b. 3 dan 114
c. 245 dan 21

9. Dengan menggunakan Algoritma Euclidean, tentukan Greatest Common Divisor dari 414 dan 662!
10. Dengan menggunakan Chinese Reminder Theorem, tentukan sebuah bilangan bulat yang bersisa
2 jika dibagi 3, bersisa 3 jika dibagi 4, dan bersisa 1 jika dibagi 5!

H a l a m a n | 11

H a l a m a n | 12
UAS Semester I 2009/20 10

UJIAN AKHIR SEMESTER


17 Desember 2009
120 menit

1. Finite State Machine, FSM dengan abjad masukan I = {0,1} dan keluaran O = {0,1}.
Buatlah FSM (Moore Machine) paling sederhana, State (Transition) Table, dan contoh Kleene
Closure (rentetan/stream) masukan dan keluaran yang mungkin untuk pengenal pola 101 atau
110 dan boleh overlapped. FSM akan mengeluarkan 1 jika pole-pola tersebut ditemukan, selain
itu 0.
2. Kerjakan soal Logika Proposisi yang berikut ini:
a. Buatlah Kontrapositif dan tabel kebenarannya dari proposisi berikut ini:
Jika kehabisan oksigen, manusia akan mati.
b. Buatlah negasi dari proposisi berikut ini:
Semua Penganut Darwinisme keturunan Kera.
c. Tunjukkan (mengapa) proposisi berikut bernilai Betul atau Salah:
Untuk semua nilai x bilangan Real, ada nilai y bilangan Real yang mengakibatkan bahwa y
x = 0.
3. Pada suatu acara liburan yang diselenggarakan oleh suatu perusahaan yang berangkat menggunakan
tujuh bis, ada tiga orang sahabat (X, Y, dan Z) yang turut serta. Total tempat duduk yang tersedia
dalam bis-bis digunakan cukup untuk seluruh peserta liburan tersebut. Jika pembagian tempat
duduk dan bis yang digunakan peserta dilakukan dengan undian secara acak dan adil (FAIR),
hitunglah banyaknya cara (outcomes bukan probability / peluang) yang berikut ini.
a. Ketiganya dalam satu bis yang sama?
b. Ketiganya berbeda bis (tidak ada yang berada dalam satu bis yang sama)?
4. Ada tiga sakelar listrik A, B, dan C dengan peluang untuk tesambung (ON) masing-masing yaitu
pa = 0.8, pb = 0.7, dan pc = 0.6. Ketiga sakelar tersebut dihubungkan secara seri untuk
mengendalikan nyala sebuah lampu (lihat gambar di bawah). Dengan menganggap lampu akan
menyala atau padam hanya karena sakelar-sakelar A, B, dan C, hitunglah yang berikut ini

H a l a m a n | 13
a. Berapakah peluangnya lampu tersebut padam karena aliran listrik terputus akibat sakelar A, B,
atau C ada yang OFF (terputus)?
b. Jika lampu tersebut ternyata padam, berapakah peluangnya karena sakelar A dalam keadaan
OFF (terputus)?
5. a. Apakah K13 Memiliki Sirkuit Euler? Sirkuit Hamilton? Berikan Alasannya!
b. Ulangi pertanyaan (a) untuk K14.
6. a. Rangkaian :

Gambarkan tree-nya

Adakah komponen yang redundan?

Komponen mana yang menjadi State Variabel?

b. Rangkaian :

Gambarkan tree-nya

Adakah komponen yang redundan?

H a l a m a n | 14
UAS Semester I 2010/20 11

UJIAN AKHIR SEMESTER


14 Desember 2010
120 menit

1. Ada dua jenis mesin produksi lampu pijar, yaitu mesin A dan B. Setiap bulan masing-masing
menghasilkan lampu pijar, yang dikemas dalam dus yang berisi 1000 lampu/dus, Mesin A sebanyak
17000 lampu dengan kerusakan 5% dan Mesin B sebanyak 8000 lampu dengan kerusakan 15%.
Kendali mutu dilakukan dengan pencuplikan secara acak sebagai berikut:

Pertama ambil satu dus dari dua puluh lima dus tersebut.

Kemudian, dari dus yang terambil, diambil (dicuplik/sampling) dua lampu.

a. Berapakah probabilitas lampu yang dicuplik tersebut keduanya rusak?


b. Jika lampu yang dicuplik tersebut keduanya rusak, berapakah probabilitas kedua lampu tersebut
berasal dari Mesin A?
2. Hasil sebuah penelitian menyatakan bahwa 1 (satu) dari 4 (empat) orang penduduk Indonesia (25%)
mengidap sakit jiwa dan anggaplah hasil itu sahih. Ada satu cara uji canggih, tetapi tentunya tidak
sempurna, dengan akurasi/ketepatan 99% (1% dari orang-orang sakit jiwa dinyatkan/didiagnosa
sehat; false negative) jika menguji orang-orang yang sakit jiwa. Sedangkan jika menguji orangorang yang sehat, akan menghasilkan kesalahan 5% (5% dari orang-orang sehat dinyatakan sakit
jiwa; false positive).
a. Berapakah probabilitas bahwa Anda betul-betul sakit jiwa jika Anda dinyatakan/didiagnosa
sakit jiwa dengan cara uji canggih tersebut?
b. Berapakah probabilitas bahwa Anda betul-betul sehat jika Anda didiagnosa tidak sakit jiwa
dengan cara uji canggih tersebut?
3. Finite State Machine, FSM dengan abjad masukan I = {0, 1} dan keluaran O = {0, 1}. Buatlah FSM
(Moore Machine) paling sederhana, State (Transition) Table, dan contoh Kleene Closure
(rentetan/stream) masukan dan keluaran yang mungkin untuk pengenal pola 10010 dengan syarat
0 yang terakhir pada posisi 3k (k = 1, 2, 3,), dan boleh overlapped (10 yang terakhir bisa
digunakan lagi sebagai 10 awal pola berikutnya). FSM akan mengeluarkan 1 jika pola-pola
tersebut ditemukan pada posisi yang tepat, selain itu 0.

H a l a m a n | 15
UAS Semester I 2011/20 12

UJIAN AKHIR SEMESTER


19 Desember 2011
180 menit

1. Finite State Machine


a. Finite State Machine, FSM dengan abjad masukan I={0,1,2,,9} dan keluaran O={0,1}.
Buatlah FSM Moore Machine yang paling sederhana dan State Transition Table untuk pengenal
pola d7d5d2d1 atau d5d2d7 (dn dari digit-digit NIM anda=dnd3d2d1), dan boleh
overlapped. FSM akan mengeluarkan 1 jika pola-pola tersebut ditemukan, selain itu
mengeluarkan 0.
b. Buatlah contoh satu rentetan (25 s.d. 30 abjad input) input dan output dengan berbagai
kemungkinan untuk FSM pada soal (a).
c. Buatlah rentetan output untuk satu rentetan input <NIM>d1d5d2d7<NIM>d1d2d7d5<NIM>
(<NIM> adalah digit-digit NIM Anda=dnd3d2d1) untuk FSM pada soal (a).
2. Ada 3 orang sahabat berencana mengadakan reuni di suatu desa. Di desa tersebut ada 7 restoran
favorit mereka yang pasti meraka pilih satu diantaranya. Jika setiap orang dari ke-3 sahabat tadi
memilih secara acak 1 dari 7 restoran favorit tersebut, berapakah peluangnya:
a. Ketiganya berbeda (tidak ada yang sama) restoran?
b. Ketiganya memilih restoran yang sama?
c. Satu orang berbeda (dua orang sama) restoran?
3. Hasil sebuah penelitian menyatakan bahwa 1 (satu) dari 5 (empat) orang penduduk Indonesia (20%)
mengidap sakit jiwa dan anggaplah hasil itu sahih. Ada satu cara uji canggih, tetapi tentunya tidak
sempurna, dengan akurasi/ketepatan 99% (1% dari orang-orang sakit jiwa dinyatkan/didiagnosa
sehat; false negative) jika menguji orang-orang yang sakit jiwa. Sedangkan jika menguji orangorang yang sehat, akan menghasilkan kesalahan 5% (5% dari orang-orang sehat dinyatakan sakit
jiwa; false positive).
a. Berapakah probabilitas bahwa Anda betul-betul sakit jiwa jika Anda dinyatakan/didiagnosa
sakit jiwa dengan cara uji canggih tersebut?
b. Berapakah probabilitas bahwa Anda betul-betul sehat jika Anda didiagnosa tidak sakit jiwa
dengan cara uji canggih tersebut?

H a l a m a n | 16
UAS Semester I 2015/20 16

UJIAN AKHIR SEMESTER


MATEMATIKA STI II2110
2015
1. Pada suatu hari, Anda hendak pergi ke kampus dan baru sadar bahwa Anda tidak memakai
kacamata. Setelah mengingat-ingat, ada beberapa fakta yang dapat Anda pastikan
kebenarannya.
a. Jika kacamataku ada di meja daput, maka saya pasti sudah melihatnya ketika sarapan
pagi.
b. Saya membaca koran di ruang tamu atau saya membacanya di dapur.
c. Jika saya membaca koran di ruang tamu, maka pastilah kacamata saya letakkan di
meja tamu.
d. Saya tidak melihat kacamataku pada waktu sarapan pagi.
e. Jika saya membaca buku di ranjang, maka kacamata saya letakkan di meja samping
ranjang.
f. Jika saya membaca koran di dapur, maka kacamata saya ada di meja daput.
Berdasarkan fakta-fakta tersebut, tentukan dimana letak kacamata Anda!
2. Misalkan :
U = himpunan mahasiswa
P = himpunan mahasiswa yang nilai ujian UTS di atas 80
Q = himpunan mahasiswa yang nilai ujian UAS di atas 80
Seorang mahasiswa mendapat nilai A jika nilai UTS dan nilai UAS keduanya di atas 80,
mendapat nilai B jika salah satu ujian di atas 80, dan mendapat nilai C jika kedua ujian di
bawah 80.
Nyatakan pernyataan berikut dalam notasi himpunan :
a. Semua mahasiswa yang mendapat nilai A
b. Semua mahasiswa yang mendapat nilai B
c. Semua mahasiswa yang mendapat nilai C
3. Sebuah klub penggemar mobil VW terdiri atas 8 pria dan 6 wanita.
Terdapat l pasang suami dan istri di antara anggota klub tersebut. Berapa banyak cara
membentuk sebuah panitia yang terdiri atas 3 pria dan 3 wanita sedemikan sehingga
memasukan salah satu dari suami atau istri itu. tetapi tidak keduanya?
4. Ada 9 bola. Tiap bola ditandai dengan angka yang saling berlainan yakni:
mulai dari 12, 13,14, IS, l6, 17, I8, 19 dan 20. Dilakukan pengambilan 2 bola secara acak,
Tentukan peluang munculnya 2 bola dengan jumlah angka yang genap!
5. Nyatakan fungsi Boolean f(x,y, z) = x + y'z dalam bentuk kanonik SOP dan POS.
6. Minimisasi fungsi Boolean f(x,y, z) = x'yz + x'yz' + xy'z' + xy'z.
Gambarkan rangkaian logikanya!
7. Tentukan lintasan terpendek dari simpul 5 ke simpul lain!

H a l a m a n | 17

8. Buatlah pohon merentang minimum dari Graf di bawah ini dengan menggunkan
Algoritma Kruskal (sertakan dan sketsakan tahapannya) dan tentukan nilai total cost dari
pohon merentang minimum tersebut!

9. Dengan menggunakan induksi matematika, buktikan pernyataan Untuk membayar biaya


pos sebesar n sen (n 8) selalu dapat digunakan hanya perangko 3 sen dan perangko 5 sen
benar.
10. Diberikan dua buah bilangan bulat tak-negatif m dan n (m n). Algoritma Euclidean
berikut mencari pembagi bersama terbesar dari m dan n. Dengan menggunakan
keterangan dari prosedur dan deklarasi yang sudah diberikan, buatlah bagian algoritma
dari tabel di bawah ini tanpa menambahkan variabel lain.
procedure Euclidean (input m, n : integer,
output PBB : integer)
{ Mencari PBB(m , n) dengan syarat m dan n bilangan tak negatif
dan m n
Masukan : m dan n , m n dan n 0
Keluaran : PBB(m ,n)
}
Deklarasi
r : integer
Algoritma :

II2111
Probabilitas dan
Statistika

H a l a m a n | 19
UTS Semester I 2008/ 2009

UJIAN TENGAH SEMESTER


24 Oktober 2008
120 menit

1. Jelaskan mengenai teorema Bayes, signifikansinya dan buktikan teorema Bayes!


2. Jelaskan mengenai definisi variable acak binomial, tuliskan fungsi probabilitasnya (probability
mass function), buktikan persamaan mean dan variansinya!
3. Buktikan bahwa (a) E (2 X 3) 2E ( X ) 3 dan (b) E[( X X ) 2 ] E ( X 2 ) [ E ( X )]2 bila X
adalah suatu variabel acak kontinyu!
4. Dalam berapa banyak caralah 7 buku dapat disusun pada sebuah rak buku jika (a) semuanya dapat
disusun sembarang, (b) 3 buku tertentu harus selalu ada berdekatan, dan (c) 2 buku tertentu harus
selalu berada pada pada ujung rak?
5. A dan B memutuskan untuk bertemu antara jam 3 dan 4 sore tetapi sepakat bahwa masing-masing
akan menunggu tidak lebih lama daripada 10 menit. Tentukan probabilitas bahwa mereka akan
bertemu.
6. Dua titik dipilih secara acak dari sebuah segmen garis lurus yang panjangnya adalah a 0 . Carilah
probabilitas bahwa ketiga segmen garis yang dibentuk merupakan sebuah segitiga.
7. Mean diameter dalam dari 200 sampel peralatan cuci yang diproduksi dalam sebuah mesin adalah
0,502 inci dengan deviasi standar 0,005. Aplikasi di mana peralatan cuci ini hendak digunakan
hanya mengijinkan toleransi maksimum terhadap diameter sebesar 0,496 sampai 0,508 inci. Di luar
rentang ini, peralatan cuci tersebut akan dianggap cacat. Tentukan persentase dari peralatan cuci
cacat yang diproduksi oleh mesin tersebut dengan mengasumsikan diameter dalamnya terdistribusi
normal.
8. Carilah probabilitas untuk mendapat lebih daripada 25 kali jumlah angka 7 dalam 100 kali
pelemparan sepasang dadu yang seimbang.
9. Jika 3% dari bola lampu yang diproduksi oleh sebuah perusahaan merupakan bola lampu yang
cacat, maka carilah probabilitas bahwa dalam sebuah sampel yang terdiri atas 100 bola lampu
dimaksud akan terdapat (a) lebih dari 5, (b) antara 1 dan 3, (c) kurang dari atau sama dengan 2 bola
lampu yang cacat.
10. Antara jam 2 dan 4 sore, rata-rata dari panggilan telepon masuk per menit ke suatu perusahaan
adalah 2,5. Carilah probabilitas bahwa selama menit tertentu akan terdapat (a) 0, (b) 1, (c) 2, (d) 3,
(e) 4 atau kurang, dan (f) lebih dari 6 panggilan telepon masuk.

H a l a m a n | 20
UTS Semester I 2009/ 2010

UJIAN TENGAH SEMESTER


19 Oktober 2009
90 menit
1. Sebuah toko cat memproduksi dan menjual dua macam cat (latex dan semigloss). Berdasarkan data
penjualan sebelumya, peluang bahwa seorang nasabah membeli jenis latex sebesar 0.75. Dari
pembeli jenis latex, sebanyak 60% juga membeli roller. Tetapi hanya 30% dari pembeli cat jenis
semigloss membeli roller. Secara random dipilih seorang nasabah yang membeli roller dan salah
satu jenis cat. Tentukan peluang bahwa cat yang dibeli oleh nasabah tersebut adalah jenis latex.
2. Variabel random X dan Y mempunyai distribusi peluang gabungan sbb:
f(x,y)

y=1

y=2

y=3

x=1

1
12

1
6

1
12

x=2

1
6

1
4

1
12

x=3

1
12

1
12

Tentukan peluang:
a.

P( X 2)

b. P(XY ganjil)
c. P(Y genap|X genap)
3. Diberikan variabel random X dengan fungsi densitas:
1
,0 5
() = { 5
0, untuk yang lain
2
2
a. Hitunglah E (X ) dan E[( X ) ]

b. Hitunglah P( 2 X 2 )
c. Gunakan teorema Chebyshev untuk menghitung (b)
4. Dalam pengujian produk perangkat keras yang akan dikemas menunjukkan 10% tidak lolos uji
kualitas. Jika diambil sampel sebanyak 15, tentukan peluang:
a. sebanyak-banyaknya 5 produk tidak lolos uji.
b. antara 3 sampai dengan 6 tidak lolos uji.

H a l a m a n | 21
UTS Semester I 2010/ 2011

UJIAN TENGAH SEMESTER


110 menit
1. Seorang penjual sakering menaruh 20 buah sakering di dalam kotak. Penjual itu tidak jujur sebab
diantara 20 sakering itu terdapat 5 buah yang rusak. Seorang pembeli mengambil 2 buah sakering
secara acak satu per satu dari dalam kotak tanpa pengembalian, berapa peluang sakering yang
terambil keduanya rusak?
2. Dalam sebuah pilkada di sebuah kota, 55 orang memilih kandidat X, 40 orang diantaranya wanita,
70 orang memilih kandidat Y, 30 diantaranya wanita, dan 80 orang memilih kandidat Z, 40
diantaranya wanita. Seorang pemilih diambil secara acak. Jika diketahui bahwa orang tersebut
adalah wanita, berapa peluang dia memilih kandidat Z?
3. Sebuah survey menunjukkan bahwa pengguna software sistem informasi tertentu hanya 40% yang
merasa puas. Sepertiga dari pengguna yang puas membeli software dari vendor A. Diketahui dari
survey bahwa 30% pembelian berasal dari vendor A. Bila diberikan informasi bahwa paket software
berasal dari vendor A, tentukan peluang bahwa pengguna tertentu merasa tidak puas.
4. Peluang seseorang menderita reaksi buruk terhadap suntikan suatu serum adalah 0.001. Bila di suatu
kecamatan diberikan suntikan jenis serum ini kepada 2000 orang penduduk, tentukanlah
a. Peluang antara 3 hingga 8 orang akan menderita reaksi buruk
b. Peluang lebih dari 2 orang yang aka menderita reaksi buruk
5. Peluang seorang mahasiswa dapat lulus kuliah IF2092 adalah 75%. Jika diambil sampel sebanyak
10 orang, tentukan peluang:
a. Sekurang-kurangnya 8 orang tidak lulus
b. Tepat 5 orang lulus
6. Seorang pemilik rumah mengasuransikan rumahnya selama musim badai sebesar $50.000.
Perusahaan asuransi menaksir terjadinya kerugian total dengan peluang 0.002, kerugian 50%
dengan peluang 0.01, dan kerugian 25% dengan peluang 0.1. Jika kerugian lainnya diabaikan,
berapa besarkah premi yang seharusnya ditagih oleh perusahaan asuransi pada setiap musim badai
agar mendapat keuntungan $500?
7. Lama waktu dalam satuan detik untuk mengakses situs web tertentu diberikan oleh peubah acak Y
= 2X + 1, yang dalam hal ini X dan Y memunyai fungsi padat peluang
1
4, > 0
() = {4
0,
Tentukan rataan dan variansi dari peubah acak Y.

H a l a m a n | 22
UTS Semester I 2011/ 2012

UJIAN TENGAH SEMESTER


18 Oktober 2011
100 menit

1. (nilai 20) Sistem golongan darah ABO terdiri atas 3 komponen yaitu ada/tidaknya antigen A dan B
pada seseorang dengan peluang kemunculan masing-masing antigen sebesar 25%. Golongan darah
A ditentukan dengan adanya antigen A tetapi tidak ada antigen B, golongan darah B ditentukan
dengan adanya antigen B tetapi tidak ada antigen A, golongan darah AB ditentukan dengan adanya
kedua antigen dan golongan darah O ditentukan oleh ketiadaan kedua antigen. Hitung peluang
kemunculan masing-masing golongan darah (A, B, O, AB)!
2. (nilai 20) Pada sistem penggolongan darah yang menggunakan Rh (+) dan (-), peluang munculnya
antigen D (Rh+) adalah 80%. Hitung peluang kemunculan masing-masing golongan darah (A-, A+,
B-, B+, O-, O+, AB-, AB+)
3. (nilai 25) Penduduk suatu Negara memiliki distribusi golongan darah sebagai berikut:
O: 50%, A: 40%, B: 7%, AB: 3%
Di suatu desa terdapat 30 penduduk dengan distribusi yang sama, misalkan di desa tersebut
terserang penyakit yang membutuhkan transfusi darah. Hitung peluang dapat dilakukan transfusi
(oleh penduduk lain di desa yang sama) jika korban penyakit memiliki golongan darah:
a. A
b. B
c. O
d. AB
4. (nilai 25) Pada sistem golongan darah dengan Rh, transfusi dapat dilakukan dengan pendonor berRh(-) ke penerima dengan Rh apapun sedangkan transfusi oleh pendonor dengan Rh+ hanya dapat
dilakukan dengan penerima dengan Rh(+). Jika terjadi suatu bencana di desa pada soal nomor 3,
berapa peluang masing-masing golongan darah (A-, A+, B-, B+, O-, O+, AB-, AB+) dapat
menerima transfusi (gunakan jawaban pada soal nomor 1 dan nomor 2 untuk distribusi golongan
darah pendonor)
5. (nilai 20) Seseorang dapat mendonorkan darah adalah setiap 90 hari. Usia rata-rata suatu kantung
darah dapat digunakan adalah 15 hari. Misalkan terdapat 10 orang pendonor darah rutin, hitung
peluang terdapat persediaan darah sebanyak 2 kantung jika suatu saat dibutuhkan!

H a l a m a n | 23
UAS Semester I 2009/20 10

UJIAN AKHIR SEMESTER


21 Desember 2009
90 menit

1. Sebuah mesin minuman diatur demikian sehingga bisa menuangkan rata-rata 200 mililiter setiap
gelas. Minuman yang tertuang dalam gelas tersebut mempunyai distribusi normal dengan
simpangan baku 15 mililiter.
a. Hitung peluang bahwa sebuah gelas berisi antara 191 dan 209 mililiter
b. Berapa gelas yang tidak memuat minuman (tumpah) jika digunakan gelas berukuran 230
mililiter dari 1000 orang peminum berikutnya.
2. Seorang ahli Kimia menyatakan rata-rata hasil suatu proses 500 gram/mml dari material bahan
dasarnya. Untuk memeriksa pernyataan tersebut dia mengambil 25 sampel setiap bulan. Jika nilai t
yang dihitung terletak antara t0.05 dan t0.05 maka dia puas dengan pernyataannya tersebut.
Kesimpulan apa yang dia berikan jika sampel mempunyai rata-rata 518 gram/mml dengan
simpangan baku s = 40 gram? Asumsi distribusi dari hasil proses mendekati normal.
3. Data waktu pengeringan dari suatu pengecatan diberikan sebagai berikut:
3.4 2.5 4.8 2.9 3.6
2.8 3.3 5.6 3.7 2.8
4.4 4.0 5.2 3.0 4.8
Asumsi bahwa pengukuran merepresentasikan sampel random dari populasi normal, tentukan 99%
batas toleransi bahwa pengukuran memuat 95% nilai pengukuran waktu pengeringan.
4. Pengalaman lalu menunjukkan bahwa waktu yang diperlukan untuk mengerjakan ujian suatu ujian
adalah sebuah variabel random normal dengan rataan 35 menit. Jika sampel random yang berukuran
20 mempunyai rata-rata 33.1 menit dan simpangan baku 4.3 menit. Ujilah hipotesis pada tingkat
signifikan 0.05 bahwa =35 menit terhadap alternatif bahwa < 35. Konfirmasi uji ini dengan
menghitung P-value.

H a l a m a n | 24
UAS Semester I 2010/20 11

UJIAN AKHIR SEMESTER


9 Desember 2010
110 menit

1. (Nilai 20) Sebuah perusahaan membayar gaji karyawannya rata-rata Rp15.900 per jam dengan
simpangan baku Rp1.500. Jika besaran gaji tersebut terdistribusi normal (perhitungan dibulatkan
ke rupiah terdekat).
2. (Nilai 10) Untuk suatu distribusi-F, hitunglah nilai f dengan derajat kebebasan 8 dan 10 sehingga
luas kanannya 0.95.
3. (Nilai 15) Suatu sampel acak sebanyak 15 mahasiswa diambil dari populasi mahasiswa dari suatu
universitas. Ke-15 mahasiswa tersebut diberikan tes Bahasa Inggris dan diperoleh nilai rata-rata
mereka adalah 75 dengan simpangan baku 8. Tentukan selang kepercayaan 95% untuk menduga
kemampuan Bahasa Inggris semua mahasiswa di universitas tersebut.
4. (Nilai 20) Suatu lembaga penelitian di Jakarta telah mengadakan survey sederhana untuk
mengetahui berapa besar rata-rata pengeluaran turis asing yang berkunjung ke Bali. Untuk itu,
diambil sampel acak sebanyak 500 turis asing yng menginap di beberapa hotel berbintang lima di
Nusa Dua, Bali. Dari survey diperoleh bahwa rata-rata pengeluaran mereka adalah sebesar 2.000
dolar per turis yang terdiri atas pengeluaran untuk hotel, transportasi, makan, dan barang-barang
seni. BIla diketahui simpangan baju pengeluaran adalah 250 dolar,
a. Buatlah selang kepercayaan 99% untuk memperkirakan rata-rata sesungguhnya pengeluaran
turis asing setiap berkunjung ke Bali.
b. Hitung taksiran galat untuk soal (a) di atas.
5. (Nilai 20) Suatu pabrik batere mobil menyatakan bahwa umur batere rata-rata 5 tahun dengan
variansi 1 tahun. Untuk meyakinkan pendapatnya itu diambil 5 sampel batere dan ternyata
mempunyai umur 1,9; 2,4; 3,0; 3,5; dan 4,0 tahun. Asumsikan populasi umur batere terdistribusi
hampir normal.
a. Tentukan selang kepercayaan 95% untuk nilai variansi 2
b. Apakah klaim perusahaan bahwa variansi umur batere sama dengan 1 tahun masih dapat
diterima?
6. (Nilai 15) Daya tahan tali yang dihasilkan suatu pabrik memunyai rata-rata 1.800 lb dan standard
deviasi 100 lb. Disebutkan bahwa dengan memakai teknologi baru dalam proses produksi, maka
daya tahan tali yang diproduksi dapat ditingkatkan. Untuk menguji pernyataan itu sebuah sampel
yang terdiri atas 50 buah tali diujicobakan dan ternyata rata-rata daya tahannya adalah 1.850 lb.
Dapatkah kita menyetujui hipotesis ini bila digunakan tingkat signifikan 1% ?
7. (Nilai 2) Apa perkiraan nilai Anda untuk kuliah ini? (A/AB/B/BC/C/D/E)

H a l a m a n | 25
UAS Semester I 2011/20 12

UJIAN AKHIR SEMESTER


120 menit
1. Suatu populasi terdiri dari lima angka yaitu: 2,3,6,8,11. Hitunglah:
a. Rata-rata populasi
b. Standar deviasi populasi
Misalkan dilakukan pengembalian sampel sebanyak sepasang angka dengan pengembalian dan
kemudian dihitung rataan sampel. Hitunglah:
c. Rata-rata dari distribusi (seluruh kombinasi/ruang sampel) rataan tiap sampel
d. Standar deviasi dari rataan distribusi rataan sampel
2. Suatu vendor layanan A mengklaim dapat melayani sebanyak rata-rata 1400 permintaan per hari
dengan standar deviasi 200. Vendor layanan B mengklaim mampu melayani dengan volume
layanan sebanyak 1200 permintaan per hari dengan standar deviasi 100. Berapa peluang
a. Vendor A mampu melayani minimal 160 layanan
b. Vendor A dapat melayani 250 layanan lebih banyak dibanding vendor B
3. Percobaan pengenalan 200 sampel tulisan tangan menggunakan suatu algoritma selama satu
minggu menghasilkan rata-rata akurasi sebesar 82.4% dengan standar deviasi 4.2%. Hitunglah
interval akurasi rata-rata untuk keseluruhan tulisan tangan untuk:
a. Selang kepercayaan 95%
b. Selang kepercayaan 99%
4. Seorang pemilik perguruan tinggi menyatakan bahwa 90% alumni sekolahnya mendapatkan
pekerjaan dalam waktu 3 bulan setelah lulus. Setalah dilakukan eksperimen sebanyak 200 orang,
didapat hasil 160 orang yang mendapat pekerjaan dalam waktu 3 bulan setelah kelulusan.
a. Rancanglah kaidah pengambilan keputusan (definisikan H0 dan H1) untuk memverifikasi
pernyataan tersebut!
b. Berapa banyaknya alumni paling sedikit yang diterima kerja dalam waktu 3 bulan agar
pernyataan tersebut setidaknya dapat diterima?
5. Pada saat ujian akhir semester kelas paralel nilai dari kedua kelas dibandingkan. Kelas pertama
berisi 40 mahasiswa mendapat nilai rata-rata 74 dengan standar deviasi 8 sedangkan kelas kedua
berisi 50 mahasiswa mendapatkan nilai rata-rata 78 dengan standar deviasi 7. Apakah ada
perbedaan yang signifikan antara kinerja kedua kelas dan jelaskan jawaban Anda
a. Pada tingkat signifikansi 0.05
b. Pada tingkat signifikansi 0.01

EL2142
Sistem Digital dan
Mikroprosesor

H a l a m a n | 27
UTS Semester I 2006/ 2007

UJIAN TENGAH SEMESTER


14 Oktober 2006
120 menit
1. Pandang suatu fungsi boolean

f ( x1 , x2 , x3 , x4 ) M (1,2,3,7,9,10,11,15)
Asumsikan bahwa input hanya tersedia dalam bentuk uncomplemented.
a. Tunjukkan bahwa f x 2 x3 x 2 x 4 x3 x 4
b. Gambarkan rangkaian CMOS yang mengimplementasikan f dengan jumlah transistor
sesedikit mungkin, tanpa menggunakan TG (Transmission Gate)
c. Dengan hanya menggunakan kombinasi struktur NAND, NOR, INVERTER, dan TG
gambarlah rangkaian CMOS yang mengimplementasikan f dengan jumlah transistor
sesedikit mungkin.
2. Diberikan suatu rangkaian kombinasional dengan lima variabel input A, B, C, D, dan E sbb:

F ( A, B, C, D, E ) m(0,1,3,4,6,8,9,11,13,14,16,19,20,21,22,24,25) D(5,7,12,15,17,23)
a. Sederhanakan rangkaian tersebut dalam bentuk SOP dengan menggunakan suku-suku
dont care. Gunakan 2 buah K-Map 4-variabel B,C,D,E untuk A = 0 dan untuk A = 1.
b. Sederhanakan rangkaian tersebut dalam bentuk POS dengan menggunakan suku-suku
dont care. Gunakan 2 buah K-Map 4-variabel B,C,D,E untuk A = 0 dan untuk A = 1.
c. Implementasikan rangkaian yang paling sederhana dengan hanya menggunakan
NAND saja (dalam kasus bentuk SOP lebih sederhana dari bentuk POS) atau
menggunakan NOR saja (dalam kasus bentuk POS lebih sederhana dari bentuk SOP)
3. a. Rancanglah sebuah full adder 1-bit sampai jadi sebuah rangkaian full adder yang lengkap.
b. Katakanlah anda hanya memiliki NAND gate saja, ubahlah implementasi full adder pada (a)
menjadi dengan hanya menggunakan NAND gate saja.
c. Implementasikan full adder pada (a) menggunakan PLA (4-input, 4-AND-plane, 4-ORplane). Tandai dengan jelas titik yang harus terhubung dalam PLA tersebut.
4. Fungsi output suatu sistem 4-input / 2-output dapat dituliskan sebagai berikut:

F1 ( A, B, C , D) m(0,7,8,12,14,15) D(6,11,13)
F2 ( A, B, C , D) M (2,5,9,10,11,15) D(3,4,13,14)
a. Berikan bentuk SOP (Sum-Of-Products) atau POS (Product-Of-Sums) minimum untuk
masing-masing F1 dan F2.
b. Rancanglah

suatu

rangkaian

multi

output

dengan

cost

minimum

yang

mengimplementasikan F1 dan F2 sekaligus dalam bentuk POS atau SOP.


c. Berikan implementasi rangkaian pada (b) dengan hanya menggunakan NAND dan/atau
NOR gate.

H a l a m a n | 28
UTS Semester I 2007/ 2008

UJIAN TENGAH SEMESTER


3 November 2007
120 menit

Soal 1
Rancanglah BCD-to-4-Segment display controller dengan spesifikasi berikut. Input adalah bilangan
decimal 0 hingga 9 yang dikodekan dengan bilangan biner 4 bit A, B, C, D mulai dari 0000 (untuk
bilangan desimal 0) hingga 1001 (untuk bilangan desimal 9). Output rangkaian berupa 4 segment
LED yang dikendalikan oleh 4 sinyal S0, S1, S2, dan S3. LED akan menyala bila sinyal-sinyal
tersebut diaktifkan.
Pengkodean bilangan decimal 0 hingga 9 tersebut kepada 4-segment adalah sebagai berikut:

a. Tuliskan tabel kebenaran yang berisi input A, B, C, D dan output S0, S1, S2, S3 dari rangkaian tsb.
Anggap kode di luar 0000 hingga 1001 bersifat dont care.
b. Gambarkan Peta Karnaugh untuk setiap output S0, S1, S2, dan S3 dengan variabel AB sebagai
kolom dan variabel CD sebagai baris seperti pada gambar atas kanan.
c. Sederhanakan fungsi masing-masing S0, S1, S2, dan S3 dengan memperhitungkan juga kotak-kotak
dont care sehingga diperoleh jumlah gerbang minimum untuk fungsi multi-output tsb (petunjuk:
Gunakan suku-suku bersama sebanyak mungkin.)
d. Apakah penyederhanaan fungsi multi-output pada c akan selalu menghasilkan implementasi yang
minimum dari sisi jumlah gerbang logika? Jelaskan jawaban Anda.
Soal 2
a. Buatlah tabel kebenaran dari rangkaian Half Adder (HA) dan Full Adder (FA)
b. Tuliskan persamaan untuk kedua output HA dan FA tersebut.
c. Gambarkan rangkaian logika HA dengan menggunakan gerbang logika dasar.
d. Gambarkan rangkaian FA dengan menggunakan HA sebagai gerbang dasar

H a l a m a n | 29
e. Gambarkan rangkaian Ripple-Carry Adder 4-bit dengan menggunakan FA. Jangan lupa
memberikan label semua input dan output untuk semua blok FA.
f.

Jelaskan bagaimana Carry Look Ahead Adder memiliki delay carry-out lebih pendek daripada
Ripple-Carry Adder.

Soal 3
Pandang suatu fungsi Boolean

f ( x1 , x2 , x3 , x4 ) M (1,3,4,5,6,7,14,15)
Asumsikan bahwa input hanya tersedia dalam bentuk uncomplemented.
a. Berikan bentuk minimum POS (Product-Of-Sums) dari f.
b. Ubahlah bentuk minimum POS pada butir a. Menjadi bentuk AOI (And-Or-Invert)
c. Gambarlah rangkaian CMOS yang mengimplementasikan f dengan jumlah transistor sesedikit
mungkin, tanpa menggunakan TG (Transmission Gate). Gunakan bentuk f pada soal (b).
d. Dengan hanya menggunakan kombinasi struktur AND, NOR, INVERTER, dan TG gambarlah
rangkaian CMOS yang mengimplementasikan f dengan jumlah transistor sesedikit mungkin.
Gunakan bentuk f pada soal (b).
Soal 4
Fungsi output suatu sistem 4-input 2-output dapat dituliskan sebagai berikut:

f (a, b, c, d ) m(5,6,11) D(0,1,2,4,8)


g (a, b, c, d ) M (3,5,7,10,13,15) D(0,1,2,4,8)
a. Berikan bentuk SOP (Sum-Of-Products) atau POS (Product-Of-Sums) minimum untuk masingmasing f dan g.
b. Rancanglah suatu rangkaian multi output dengan cost minimum yang mengimplementasikan f dan
g sekaligus.
c. Berikan implementasi rangkaian pada (b) dengan hanya menggunakan gerbang NAND dan/atau
NOR.

H a l a m a n | 30
UTS 1 Semester I 2009/ 2010

UJIAN TENGAH SEMESTER


2009
120 menit

Soal 1: Konversi Bilangan:


a. Konversikan bilangan berikut ke bilangan biner 8 bit: 53, 81, 163, 82
b. Konversikan bilangan biner berikut ke desimal: 111001, 1110010, 10111001, 1011011
Soal 2 Sederhanakan persamaan Boolean berikut menggunakan postulat dan teorema
a.

f ( x, y, z) y z( z zx) ( x z)( x y xz)

b.

f (a, x, z ) x( x z) a az

Soal 3 Rangkaian Logika dan Penyederhanaan dengan KMap


Bagian A. Buat tabel kebenaran dan gambarkan rangkaian logika dari persamaan berikut dan
implementasikan dengan gerbang AND, OR, dan INVERTER (NOT), ubah ke bentuk canonical SOP
terlebih dahulu
a.

f ( x, y, z) xz yz xy z

b.

f (a, b, c) m(1,5,6,7)

c. Konversikan rangkaian dari soal a dengan NAND 2 input


d. Konversikan rangkaian dari soal b dengan NOR 2 input
Bagian B. Minimisasi KMap (d adalah dont care)

f (a, b, c, d ) m(1,2,7,12,13) d (5,9,10,11,15)


a. Tuliskan persamaan diatas dalam bentuk canonical SOP
b. Lakukan minimisasi dari a dengan KMap, tunjukkan Essential Prime Implicant dan Prime
Implicant
c. Tunjukkan hasil minimisasi dalam bentuk SOP dan POS
Soal 4. Buat CMOS complex gate untuk fungsi f ( x1 , x 2 , x3 , x 4 ) m(0,1,2,4,6,8,10)
Soal 5. Pilih salah satu
a. Implementasikan fungsi dengan PLA, PAL, LUT

f1 (a, b, c, d ) m(0,1,2,3,6,9,10)
f 2 (a, b, c, d ) m(0,1,6,8,9)

H a l a m a n | 31
b. Suatu rangkaian detektor (masukan A,B,C,D, dan keluaran F) mempunyai karakteristik input
dan output sebagai berikut

Rancang rangkaian kombinasional untuk detector tersebut bila hanya tersedia gerbang NAND
2 input (perhatikan adanya level keluaran T yang tidak terdefinisi untuk beberapa kombinasi
masukan tertentu)
Soal 6. Sebuah switch dalam jaringan komputer menghubungkan 4 buah computer. Jika dua atau lebih
komputer mengirim data pada saat yang sama maka akan terjadi collision dan data harus dikirim ulang.
Buatlah sebuah rangkaian untuk mendeteksi collision dalam sebuah switch dengan 4 komputer.
Rangkaian memiliki 4 buah masukan M0, M1, M2, dan M3. Jika komputer pertama mengirim data
maka M0 akan memiliki logika 1. Keluaran dari rangkaian ini akan bernilai 1 jika terjadi collision.

H a l a m a n | 32
UTS 2 Semester I 2009/ 2010

UJIAN TENGAH SEMESTER II


12 November 2009
120 menit

Soal 1 Representasi Bilangan


a. Tuliskan Bilangan Biner (8 bit) dalam format Sign & Magnitude, 1's complement, atau 2's
complement untuk bilangan desimal dibawah ini:
Sign & Magnitude 1s Complement 2s Complement
122
74
-1
-123
b. Sebuah digital thermometer mengukur suhu dalam oC menggunakan bilangan biner. Jika nilai suhu
minimum adalah -50oC dan nilai maksimum adalah 150oC, berapa jumlah bit yang diperlukan
(format 2's complement)?
c. Carilah hasil operasi (-76) + 43 dalam bentuk Two's Complement (8 bit).
2s Complement
-76
43+

+
-

Tuliskan harga desimal dari hasil penjumlahan


Soal 2 Konversi Bilangan
Konversikan bilangan berikut ke dalam basis lainnya:
Biner
a.
b.

Oktal
366.78

Hexadecimal

Desimal

A5.416

Soal 3
a. Implementasikan fungsi f(x,y,z) = m(0,1,6,7) menggunakan 2 to 4 Decoder. Masukan decoder
(a, b, c) semuanya menggunakan positive logic dan a adalah MSB. Semua keluaran decoder
juga menggunakan positive logic.
b. Counter
Menggunakan sebuah synchronous counter 4 bit, buatlah rangkaian yang memiliki output count
001, 010, 011, 100, 101, 110, 001, 010, ...
Soal 4 Minimisasi fungsi menggunakan Karnaugh Map
Tuliskan hasil minimisasi dalam bentuk SOP & POS

H a l a m a n | 33

Soal 5 Gambarkan bentuk Keluaran Q dari masing-masing flip-flop jenis Master/Slave J-K, D,
dan T (Masukan di"baca" pada saat transisi positif, dan perubahan Keluaran terjadi pada saat
transisi negatif dari pulsa pewaktu/clock pulse), bila pada Masukan FLIP-FLOP diberikan pulsa
seperti terlihat pada diagram waktu di bawah ini. Delay komponen perioda clock, perhatikan
state awal Flip-Flop T.

Soal 6 Lengkapi gambar diagram waktu rangkaian dibawah ini. Asumsikan tidak ada delay

H a l a m a n | 34
UTS Semester I 2015/ 2016

UJIAN TENGAH SEMESTER


SISTEM DIGITAL DAN MIKROPROSESOR EL2142
2015
1.

Jelaskan :
a. Sistem analog
b. Sistem digital
c. Keunggulan sistem digital
d. Kelemahan / keterbatasan sistem digital
(waktu 10 menit bobot nilai 10%)

2.

Sederhanakan fungsi berikut dengan Aljabar Boolean


a. y = (C + D) + ACD + ABC + ABCD + ACD
b. x = AB(CD) + ABD + BCD
(waktu 20 menit bobot nilai 20%)

3.

Buktikan bahwa fungsi f pada rangkaian (a) ekuivalen dengan fungsi g pada rangkaian
(b)!

(a)

(b)

(waktu 20 menit bobot nilai 20%)


4.

Gunakan metode tabular untuk meminimumkan biaya realisasi SOP untuk fungsi
berikut : F(x1, , x4) = m(0, 2, 4, 5, 7 , 8, 9, 15).
(waktu 25 menit bobot nilai 25%)

5.

Perhatikan fungsi f = w1w3 + w2w3 + w1w2. Buat table kebenarannya, lalu


implementasikan menggunakan multiplekser 2 ke 1!
(waktu 25 menit bobot nilai 25%)

H a l a m a n | 35
UAS Semester I 2006/20 07

UJIAN AKHIR SEMESTER


21 Desember 2006
120 menit

Soal 1
a. Tunjukkan bahwa dengan menggunakan teorema ekspansi Shannon, fungsi

f ( x1 , x2 , x3 ) x1 x2 x3 x1 x2 x3 x1 x2 x3 x1 x2 x3
bisa direalisasikan dengan hanya menggunakan 2 buah multiplexer 2-input dan dua buah
Inverter. Input hanya tersedia dalam bentuk uncomplemented
b. Tentukan perioda minimum clock CK, yaitu Tw, untuk rangkaian sekuensial berikut ini.
Parameter timing untuk flip-flop dan gerbang logika pada rangkaian sekuensial ini adalah
sebagai berikut:
tpAND = delay propagasi AND 3-input = 15 ns
tpOR = delay propagasi OR 2-input = 12 ns
tCQ,D = delay propagasi dari clock-ke-Q D flip-flop = 20 ns
tCQ,JK = delay propagasi dari clock-ke-Q JK flip-flop = 25 ns
tsu,D = setup time D flip-flop = 5 ns
tsu,JK = setup time JK flip-flop = 10 ns
th,D = hold time D flip-flop = 5 ns
th,JK = hold time JK flip-flop = 5 ns
Jabarkan jawaban anda dengan mengidentifikasi semua path yang mungkin menentukan Tw,
dan tentukanlah perioda clock minimum untuk masing-masing path. Perhatikan bahwa Tw
adalah perioda clock minimum untuk critical path (lintasan dari satu flip-flop ke flip-flop lainnya
dengan delay terbesar).

H a l a m a n | 36

Soal 2
Anda diminta merancang sebuah sistem sekuriti mobil sederhana dengan karakteristik berikut:
1. Ada 6 switch yang terhubung ke 4 pintu, bagasi, dan kap mesin. Dalam keadaan pintu/bagasi/kap
tertutup, switch akan menghasilkan logika 1, jika terbuka, switch akan menghasilkan logika 0.
Alarm harus aktif jika salah satu pintu/bagasi/kap mobil manapun terbuka.
2. Karakteristik sistem sekuriti mobil tersebut dinyatakan dalam diagram state sebagai berikut.
reset

p=1
A/alarm=0
p=0
B/alarm=1

p=0/1

p= status pintu, 1 jika tertutup, 0 jika salah satu pintu terbuka


a. Jelaskan prinsip kerja sistem sekuriti tersebut berdasarkan diagram state di atas.
b. Apakah diagram state tersebut sesuai dengan model Mealy atau Moore? Jelaskan!
c. Pada diagram state hanya dinyatakan satu saluran input (p), pada kenyataannya ada 6 switch.
Nyatakan persamaan p sebagai fungsi dari 6 switch supaya karakteristik (1) di atas terpenuhi. Cukup
tuliskan persamaan, tidak perlu gambar rangkaian.
d. Anggap sistem sekuriti ini hanya satu sebagai satu black box. Gambarkan saluran input dan
outputnya serta nama salurannya yang sesuai dengan diagram state di atas.
e. Anggap implementasi akan digunakan menggunakan D-FF. Berapa jumlah D-FF yang diperlukan
untuk implementasi diagram state tersebut? Mengapa?
f.

Buatlah tabel state dari diagram state tersebut!

g. Buatlah tabel state yang sudah diberikan state-assignment.


h. Buatlah K-Map untuk rangkaian output dan tentukan persamaan outputnya.
i.

Buatlah K-Map untuk rangkaian pembentuk Next State dan tentukan persamaan Next Statenya.

j.

Gambarkan rangkaian lengkap seluruh sistem

H a l a m a n | 37
k. Anggap D-FF yang digunakan dilengkapi saluran PRESET dan CLEAR. Apa manfaatnya? Dan
bagaimana memanfaatkan kedua saluran tersebut untuk memenuhi diagram state di atas.
Soal 3
Dari Tabel transisi keadaan berikut ini, tentukan apakah jumlah keadaan rangkaian sekuensial yang
direpresentasikan oleh tabel transisi tersebut telah minimum. Bila tidak, sederhanakanlah tabel tsb. dan
gambarkan kembali diagram-keadaan-nya. Jelaskan jenis apakah mesin sekuensial ini.
State

Next State

Input (LR)
00

01

10

11

Soal 4
Perhatikanlah rangkaian sekuensial berikut ini

a. Berikan persamaan eksitasi (input JK flip-flop sebagai fungsi input dan present-state).
b. Berikan persamaan next-state dan persamaan output.
c. Berikan state-assigned table untuk rangkaian ini.
d. Buatlah state-table untuk rangkaian ini.
e. Buatlah state-diagram untuk rangkaian ini.

H a l a m a n | 38
UAS Semester I 2007/20 08

UJIAN AKHIR SEMESTER


19 Desember 2007
120 menit

Soal 1
Anda diminta merancang sebuah sistem sekuriti mobil sederhana dengan karakteristik berikut:
1. Ada 6 switch yang terhubung ke 4 pintu, bagasi, dan kap mesin. Dalam keadaan pintu/bagasi/kap
tertutup, switch akan menghasilkan logika 1, jika terbuka, switch akan menghasilkan logika 0.
Alarm harus aktif jika salah satu pintu/bagasi/kap mobil manapun terbuka.
2. Karakteristik sistem sekuriti mobil tersebut dinyatakan dalam diagram state sebagai berikut.
reset

p=1
A/alarm=0
p=0
B/alarm=1

p=0/1

p= status pintu, 1 jika tertutup, 0 jika salah satu pintu terbuka


a. Jelaskan prinsip kerja sistem sekuriti tersebut berdasarkan diagram state di atas.
b. Apakah diagram state tersebut sesuai dengan model Mealy atau Moore? Jelaskan!
c. Pada diagram state hanya dinyatakan satu saluran input (p), pada kenyataannya ada 6 switch.
Nyatakan persamaan p sebagai fungsi dari 6 switch supaya karakteristik (1) di atas terpenuhi.
Cukup tuliskan persamaan, tidak perlu gambar rangkaian.
d. Anggap sistem sekuriti ini hanya satu sebagai satu black box. Gambarkan saluran input dan
outputnya serta nama salurannya yang sesuai dengan diagram state di atas.
e. Anggap implementasi akan digunakan menggunakan D-FF. Berapa jumlah D-FF yang diperlukan
untuk implementasi diagram state tersebut? Mengapa?
f.

Buatlah tabel state dari diagram state tersebut!

g. Buatlah tabel state yang sudah diberikan state-assignment.


h. Buatlah K-Map untuk rangkaian output dan tentukan persamaan outputnya.
i.

Buatlah K-Map untuk rangkaian pembentuk Next State dan tentukan persamaan Next Statenya.

j.

Gambarkan rangkaian lengkap seluruh sistem

k. Anggap D-FF yang digunakan dilengkapi saluran PRESET dan CLEAR. Apa manfaatnya? Dan
bagaimana memanfaatkan kedua saluran tersebut untuk memenuhi diagram state di atas.

H a l a m a n | 39
Soal 2
Dari tabel transisi keadaan yang diberikan di bawah ini
Present State
Q1Q2Q3

Next State/Output
x=0

x=1

000

101/1

111/0

001

110/0

000/0

010

100/0

001/1

011

101/0

000/0

100

001/1

111/1

101

011/1

001/1

110

110/1

010/1

111

000/0

000/1

State transition

00

01

10

11

a. Gambarkan diagram keadaan (state diagram) dari mesin sekuensial ini. Jelaskan jenis mesin
tersebut apakah jenis Moore atau Mealy?
b. Buat tabel transisi keadaan dari mesin tersebut bila digunakan flip flop JK untuk Q1, Q2, Q3
dengan memperhatikan tabel eksitasi flip flop JK pada gambar di atas.
c. Gambarkan K-map dari semua fungsi next-state dan output dan sederhanakan semua fungsi tsb
dalam bentuk 2-level SoP dengan memanfaatkan juga dont care dari flip flop JK.

H a l a m a n | 40
d. Gambarkan rangkaian logika dari mesin tersebut.
Soal 3
Rancang suatu FSM yang mendeteksi adanya sekuen 101 pada input x dan mengaktifkan output z
menjadi logika 1 pada suatu siklus clock setelah akhir state dimana terdeteksi sekuen 101 pada input.
Berikut ini adalah contoh trace input-output FSM tersebut. Setiap bit input/output mewakili 1 siklus
clock.
Sekuen Input : 00101010110
Sekuen Output : 00000101010
Input pada FSM ini adalah :
x : data input (satu jalur)
clk : sinyal clock
resetn : reset asinkron (active-low) yang menginisialisasi FSM
Output pada FSM ini adalah :
z : output (satu jalur)
(a) Buatlah Diagram State dan ASM Chart yang mendeskripsikan FSM ini. Apakah output z suatu
output mesin Mealy atau mesin Moore?
(b) Jika FSM ini diimplementasikan dengan menggunakan D-FF sebagai elemen memori,
1. Buatlah state table dan state-assigned table untuk FSM ini,
2. Berikan persamaan next-state dan persamaan output untuk FSM ini,
3. Berikan gambar skema rangkaian yang mengimplementasikan FSM ini.
Soal 4
Perhatikan rangkaian pada gambar

H a l a m a n | 41

Tentukan perioda minimum Clock, yaitu Tmin, dan frekuensi maksimum Clock, yaitu fmax untuk
rangkaian sekuensial berikut ini. Parameter timing untuk flip-flop dan gerbang logika pada rangkaian
sekuensial ini adalah sebagai berikut:
tpAND3 = delay propagasi AND 3-input = 10 ns
tpAND2 = delay propagasi AND 2-input = 5 ns
tpOR = delay propagasi OR 2-input = 5 ns
tCQ,D = delay propagasi dari clock-ke-Q D flip-flop = 10 ns
tCQ,T = delay propagasi dari clock-ke-Q T flip-flop = 15 ns
tsu,D = setup time D flip-flop = 5 ns
tsu,T = setup time T flip-flop = 10 ns
th,D = hold time D flip-flop = 5 ns
th,T = hold time T flip-flop = 5 ns
Soal 5
Desain rangkaian sekuensial untuk Sistem Kunci Digital; input sebuah keypad dengan tombol-tombol
Reset, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, yang akan memberikan output 4 bit BCD dengan sisa kode yang tidak
digunakan bersifat dont care. Untuk Reset digunakan kode output 1111 atau F (hex). Sistem Kunci
Digital akan menghasilkan sinyal output 1 (kunci terbuka) apabila diberikan sinyal input berurutan
sesuai dengan 3 digit pertama NIM Anda.
a.
b.
c.
d.
e.

Buat Block Diagram dan jelaskan fungsi masing-masing blok.


Buat State Diagram sistem yang akan dirancang.
Buat persamaan fungsi input, state, dan output-nya.
Lakukan minimasi jika diperlukan.
Buat rangkaiannya dengan menggunakan D FlipFlop dan komponen sesedikit mungkin.

H a l a m a n | 42
UAS Semester I 2011/20 12

UJIAN AKHIR SEMESTER


Senin / 5 Desember 2011
150 menit

Soal 1: (20%)
a. Untuk 3 bilangan biner berikut ini, konversikan masing-2 kedalam sistem bilangan Oktal,
Heksadesimal dan Desimal:
Biner
Oktal Heksadesimal Desimal
11001010.001
10011100.101
10110011.011
b. Nyatakan 4 bilangan decimal berikut kedalam representasi Sign-magnitude, 1s complement
dan 2s complement menggunakan 8bit:
Desimal Sign-magnitude 1s complement 2s complement
97
-76
-111
25
c. Carilah hasil operasi perjumlahan dari bilangan 97 dengan -111 menggunakan 1s complement
dan bilangan -76 dan -111 dengan menggunakan 2s complement dan nyatakan hasil operasi
tsb kedalam bilangan desimal. Apakah terjadi overflow pada operasi-2 tsb? Bila ya, koreksilah
agar tak terjadi overflow.
Soal 2: (20%)
Diberikan pencacah sinkron 4 bit sbb:
ENP, ENT: sinyal enable;
CLK: sinyal clock
CLR: sinyal clear
LD : sinyal load untuk memasukkan data dari
DCBA
RCO = ripple carry out, bernilai 1 hanya saat
QD,QC,QB,QA = 1111

a. Rancanglah suatu rangkaian pencacah yang dapat menghitung dari 5 hingga 12 menggunakan
chip 74163 dan beberapa gerbang logika dasar.

H a l a m a n | 43
b. Rancanglah suatu rangkaian pencacah BCD yang menghitung dari 0 hingga 9 menggunakan
chip 74163 dan beberapa gerbang logika dasar.
Soal 3: (20%)
Diberikan mesin FSM dengan input I dan output Z sbb:

SET

CLK

CLR

SET

CLR

a. Tentukan apakah mesin tsb adalah berjenis Mealy atau Moore. Jelaskan jawaban sdr.
b. Gambarkan diagram state mesin tsb dengan menurunkan terlebih dahulu persamaan next-state
dan persamaan outputnya.
Soal 4: (20%)
Diberikan diagram state suatu mesin FSM dengan input X dan output Z1 dan Z2 sbb:
S0
1/

00

/0
0

S1
1/ 00

0/ 00

0/

00

S3

S2

S4

S5

1/

00

S6
1/ 1
1

0/ 10

1/ 1

0/ 01

1/ 1

0/
01

1/
01

0/ 0

Sederhanakan jumlah state tsb menggunakan implication chart dan gambarkan kembali diagram state
minimumnya, apabila jumlah state tsb belum minimum.
Soal 5: (20%)
Suatu mesin FSM dengan input X dan output Z dirancang untuk mendeteksi urutan input 101 atau 010
sbb:
Input X:

00101011000101011

Output Z:

00001110000011110

a. Apakah mesin tsb Mealy atau Moore? Jelaskan jawaban sdr.


b. Gambarkan diagram state dari mesin FSM tsb.

H a l a m a n | 44
c. Pastikan bahwa jumlah state yang sdr buat pada b sudah minimum dengan mengujinya melalui
implication chart atau successive partitioning.

H a l a m a n | 45

EL2195
Praktikum Sistem
Digital

H a l a m a n | 46
UAS Semester I 2009/20 10

UJIAN AKHIR SEMESTER


10 Desember 2009
50 menit
Petunjuk:

Nilai total 100, nilai per nomor hanya 0 atau 10. Setiap nomor dapat berisi satu jawaban atau
lebih. Sebagai contoh jika terdapat dua jawaban yang benar dalam sebuah nomor, dan anda hanya
memberikan satu jawaban yang benar, maka nilai nomor tersebut = 0

Jawaban hanya dianggap benar, jika dituliskan dalam lembar jawab terpisah yang disediakan.

Tulis NIM, Nama Anda, dan Nama Dosen.

1. Pernyataan berikut yang salah adalah:


a. Noise margin adalah jumlah dari tegangan derau efektif yang bisa ditoleransi oleh input tanpa
mengubah nilai keluaran gerbang logika
b. Tegangan normal adalah tegangan titik operasi yang stabil
c. NML = VOL VIL
d. NMH = VIH VOH
2. Mode simulasi pada simulator tools memiliki dua pilihan. Sebutkan keduanya !
3. Lengkapilah/perbaikilah agar kode VHDL Full Adder (gabungan dari dua half adder) berikut
dapat bekerja dengan benar ! (maksimal jawaban 2 baris, tidak boleh merombak kode secara
besar-besaran)
ENTITY vhdlKu IS
PORT( A,B,Cin : IN BIT;
S,Cout : OUT BIT);
END vhdlKu;
ARCHITECTURE behavioral OF vhdlKu IS
BEGIN
S == A XOR B XOR Cin;
Cout == (Cin OR (A XOR B)) AND (A AND B);
END behavioral;

4. Perbaikilah kode di bawah ini agar berfungsi sebagai D-Flip-flop dengan benar !
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY flipflop IS
PORT( D, Clock : IN STD_LOGIC;
Q : OUT STD_LOGIC);
END flipflop;
ARCHITECTURE Behavior OF flipflop IS
BEGIN
PROCESS (Clock)
BEGIN
IF Clock = 1 THEN
Q <= D;
END IF;

H a l a m a n | 47
END PROCESS;
END Behavior;

5. Manakah yang benar dari pernyataan berikut?


a. Mesin mealy cenderung memiliki state yang lebih sedikit.
b. Mesin moore lebih aman digunakan daripada Mealy.
c. Mesin mealy bereaksi lebih cepat terhadap input.
6. Dari kode-kode di bawah ini, manakah yang menghasilkan rangkaian kombinasional!
Kode A: PROCESS (A,B)
BEGIN
IF A=1 THEN
IF B=1 THEN
Q <= 1
ELSE
Q <= 0;
END IF;
ELSE
Q <= 0;
END IF;
END PROCESS;
Kode B: PROCESS (A,B)
BEGIN
IF A=1 THEN
Q <= B;
END IF;
END PROCESS;
Kode C: PROCESS (A,B)
BEGIN
Q <= A AND B;
END PROCESS;
Kode D: (di luar process)
Q <= A AND B;
Kode E: PROCESS (A,Q)
BEGIN
IF A=1 THEN
Q <= B;
END IF;
END PROCESS;
Kode F: PROCESS (A,B)
BEGIN
IF A=1 AND B=0 THEN
Q <= B;
ELSE
Q <= 1;
END IF;
END PROCESS;

7. Urutkan dari langkah yang paling penting (harus) ke paling tidak penting (tidak perlu) dari
langkah-langkah berikut ini dalam mengimplementasikan suatu rangkaian logika menggunakan
FPGA Development Board
a. Pin Assignment
b. Minimisasi Logic
c. Simulasi
8. Gambarkanlah rangkaian digital yang dihasilkan oleh kode di bawah ini!
PROCESS (A,B,C)

H a l a m a n | 48
BEGIN
IF A = 1 THEN
Q <= A AND B AND C;
END IF;
END PROCESS;

9. Berikut ini adalah karakteristik dari IC 7410 (3 buah NAND Gate dengan 3 input). Tentukanlah
level tegangan noise yang masih sangat aman bagi komponen ini jika sebuah output Gate-nya
dihubungkan dengan input Gate-nya yang lain.
DC CHARACTERISTICS OVER OPERATING TEMPERATUR RANGE (unless otherwise
specified)

10. Berikut ini adalah IC 74153 (Dual Multiplexer). Rancanglah rangkaian Half Adder menggunakan
IC tersebut!

Inputs
Select

Output
Strobe
Q

any

any

D0

H a l a m a n | 49

D1

D2

D3

H a l a m a n | 50
UAS Semester I 2010/20 11

UJIAN AKHIR SEMESTER


3 Desember 2010
60 menit

Nilai pada soal 1-5 per nomor hanya 0 atau 10. Khusus soal nomor 6, nilai maksimumnya 50
1. Sebutkan fungsi kode VHDL berikut! Beri penjelasan apakah termasuk sinkron atau tidak beserta
batas-batas input/outputnya dan apakah serial atau paralel! Sebutkan pula kesalahan penulisan (bila
ada)! (Maksimal jawaban 3 baris)
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY abc IS
PORT ( R : IN INTEGER RANGE 0 TO 15;
Clock, Resetn, L : IN STD_LOGIC;
Q : BUFFER INTEGER RANGE 0 TO 15);
END abc;
ARCHITECTURE Behav OF abc IS
BEGIN
PROCESS (Clock, Resetn)
BEGIN
IF Resetn = 0 THEN
Q <= 0;
ELSIF (ClockEVENT AND Clock = 1) THEN
IF L = 1 THEN
Q <= R;
ELSE
Q <= Q + 1;
END IF;
END IF;
END PROCESS;
END Behav;

2. Gambarkan diagram kondisi dari kode VHDL berikut:


LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY DEF is
PORT (Clock, Resetn, w : IN STD_LOGIC;
z : OUT STD_LOGIC);
END DEF;
ARCHITECTURE Behavior OF DEF IS
TYPE State_type IS (A, B);
SIGNAL y : State_type;
BEGIN
PROCESS (Resetn, Clock)
BEGIN
IF Resetn = 0 THEN
Y <= A;
ELSIF (ClockEVENT AND Clock = 1) THEN
CASE y IS
WHEN A =>
IF w = 0 THEN y <= A;
ELSE y <= B;
END IF;

H a l a m a n | 51
WHEN B =>
IF w = 0 THEN y <= A;
ELSE y <= B;
END IF;
END CASE;
END IF;
END PROCESS;
PROCESS (y, w)
BEGIN
CASE y IS
WHEN A =>
z <= 0;
WHEN B =>
z <= w;
END CASE;
END PROCESS;
END Behavior;

3. Disediakan pulsa klok 100 Mhz, gambarkan rangkaian dengan T FF asinkron untuk menghasilkan
pulsa 12,5 Mhz!
4. Tabel kebenaran Priority encoder adalah:
w3

w2

w1

w0

y1

y0

Priority encoder memiliki masukan w sedangkan y dan z adalah keluaran. Lengkapi (bila belum
lengkap) kode VHDL berikut agar menghasilkan priority encoder yang benar!
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY priority IS
PORT (
w : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
y : OUT STD_LOGIC_VECTOR(1 DOWNTO 0);
z : OUT STD_LOGIC );
END priority;
ARCHITECTURE Behavior OF priority IS
BEGIN
PROCESS (w)
BEGIN
IF w(3) = 1 THEN
y <= 11;
ELSIF w(2) = 1 THEN
y <= 10;
ELSIF w(1) = 1 THEN
y <= 01;
ELSE
y <= 00;
END IF;
END PROCESS;
END Behavior;

H a l a m a n | 52
5. Gerbang NAND berteknologi NMOS dengan 8 masukan memiliki VIH = 4 V, VOH = 4,5 V, VIL = 1
V, dan VDD = 5 V. Jika tegangan drop pada setiap transistornya adalah 0,1 V; berapa nilai NM L
nya?
6. Anda diminta merancang rangkaian digital kontroler untuk system security sebuah bangunan.
System tersebut memunyai 3 mode:

Mode 0 semua pintu dan jendela terbuka

Mode 1 Pintu terkunci, namun jendela masih terbuka

Mode 2 Pintu dan jendela terkunci

Sistem ini berada pada mode 0 pada waktu dinyalakan. Untuk mengubah modenya terdapat dua
buah tombol input:

Tombol Increase untuk meningkatkan security dari mode 0 ke mode 1 ataupun dari mode 1 ke
mode 2.

Tombol Decrease untuk menurunkan security dari mode 2 ke mode 1 ataupun dari mode 1 ke
mode 0.

Output kontroler ini ada 2 buah:

Doorlock, yang jika nialinya 1 mengkibatkan pintu terkunci, sedang jika 0 mengakibatkan pintu
tidak terkunci

Windowlock, yang jika nilainya 1 mengakibatkan jendela terkunci, sedang jika 0


mengakibatkan pintu tidak terkunci

Tugas Anda:
a. Buat diagram FSM-nya
b. Buat kode VHDL-nya, dan jelaskan bagian Next state logic, Output logic, dan
register/current state register.

H a l a m a n | 53
UAS Semester I 2011/20 12

UJIAN AKHIR SEMESTER


19 Desember 2011
75 menit

Petunjuk: Nilai total 100, nilai per nomor hanya 0 atau 20. Setiap nomor dapat berisi satu jawaban atau
lebih. Sebagai contoh jika terdapat dua jawaban yang benar dalam sebuah nomor, dan anda hanya
memberikan satu jawaban yang benar, maka nilai nomor tersebut = 0
1. Sebutkanlah dua buah metode yang digunakan untuk mengatasi bouncing pada input rangkaian
digital yang berasal dari switch/button
2. Mode simulasi pada simulator tools memiliki dua pilihan. Sebutkan keduanya! Dan jelaskan
perbedaannya dalam SATU KALIMAT!
3. Perhatikan kode-kode dibawah ini, tentukanlah untuk setiap kode rangkaian apakah yang
dihasilkan? Rangkaian kombinasional, latch, dan flip-flop:
Kode A: PROCESS (A,B)
BEGIN
IF A=1 THEN
IF B=1 THEN
Q <= 1
ELSE
Q <= 0;
END IF;
ELSE
Q <= 0;
END IF;
END PROCESS;
Kode B: PROCESS (A,B)
BEGIN
IF A=1 THEN
Q <= B;
END IF;
END PROCESS;
Kode C: PROCESS (A,B)
BEGIN
IF A = 1 and A'event then
Q <= A AND B;
END IF;
END PROCESS;
Kode D: PROCESS (A)
BEGIN
IF A = 1 and A'event then
Q <= A AND B;
END IF;
END PROCESS;

4. Gambarkanlah rangkaian digital yang dihasilkan oleh kode di bawah ini! Buat rangkaian tersebut
sesederhana mungkin!
PROCESS (X,Y,Z)
BEGIN

H a l a m a n | 54
IF X = 1 THEN
Q <= X AND Y AND Z;
END IF;
END PROCESS;

5. Berikut ini adalah karakteristik dari IC 7410 (3 buah NAND Gate dengan 3 input). Tentukanlah
level tegangan noise yang masih sangat aman bagi komponen ini jika sebuah output Gate-nya
dihubungkan dengan input Gate-nya yang lain.
DC CHARACTERISTICS OVER OPERATING TEMPERATUR RANGE (unless otherwise
specified)

IF2111
Algoritma dan Stuktur
Data

H a l a m a n | 56
UTS Semester I 2009/ 2010

UJIAN TENGAH SEMESTER


19 Oktober 2009
2 jam

Setiap soal berbobot 20. Lembar jawaban dibagi 2, yaitu jawaban 1 3, dan 4 5.
1. (Notasi algoritmik, Array)
Diberikan sebuah array karakter berukuran 100 yang sudah ada isinya sebanyak N <= 100.
a. Buatlah procedure MaxSort yang melakukan pengurutan elemen array mengecil. MaxSort akan
memanggil fungsi MaxIndex yang menghasilkan indeks elemen dengan nilai maksimum array
mulai dari indeks awal sampai akhir, dan procedure Swap yang menerima dua indeks array dan
menukar isinya. Realisasikan MaxIndex, Swap, dan MaxSort. Gunakanlah kamus berikut ini:
Kamus
Type indeks = integer
Type TabKar = array[1..100] of character
Function MaxIndex(T:TabKar, awal:integer,

akhir:integer)

indeks
{menghasilkan indeks elemen dengan nilai maksimum: A < Z}
Procedure Swap(input a,b:indeks; input/output T:TabKar)
{i.s: a,b<N, T[a], T[b]
f.s: T[a] dan T[b] sudah ditukar}

b. Buatlah program untuk mencari sebuah nilai tertentu yang dimasukkan oleh pemakai pada
sebuah array bertipe TabKar yang isinya acak dengan menggunakan metoda sentinel yang
artinya menempelkan nilai yang dicari pada posisi akhir dari array tersebut. Anda tidak perlu
menuliskan kode untuk mengisi array. Program akan menuliskan pesan ketemu atau tidak
ketemu ke layar.
2. (Bahasa C, Matriks)
a. Deklarasikanlah sebuah konstanta integer Nmax, dan tipe MatInt matriks yang berukuran Nmax
baris dan Nmax kolom.
b. Buatlah fungsi MinElmt yang menghasilkan nilai minimum dalam matriks M yang bertipe
MatInt dan sudah ada isinya.
3. (Notasi algoritmik, List linier)
Diberikan list linier sederhana satu kepala (dikenali First(L)) dengan elemen integer yang unik dan
terurut membesar. Buatlah prosedur yang menerima x sebuah integer dan memasukkan datanya ke
dalam list sesuai nilai x tersebut. Jika nilai x sudah ada pada list, maka nilai tersebut tidak disimpan
ke dalam list, dan menampilkan pesan Nilai sudah ada dalam list.
Gunakan kamus berikut ini:
type infotype: integer
type ElmtList: <info:infotype, next:address>

H a l a m a n | 57
type List: address
//Alamat elemen pertama list L: First(L)
//Pengambilan informasi dari address P: Info(P), Next(P)
Function Alokasi(X:infotype) address
{menghasilkan address yang dialokasi. Jika alokasi gagal, menghasilkan
nil}
Procedure Dealokasi(A:address)
{i.s: A<>nil
f.s: A=nil}

4. (Notasi algoritmik, Antrian/Queue)


Diberikan sebuah antrian yang dinyatakan dengan sebuah list linier sederhana 1 kepala yang
dilengkapi dengan sebuah penunjuk ke tetangga kanannya. List tersebut diinyatakan dengan
pointer. Buatlah algoritma yang menambah dan menghapus sebuah elemen dari antrian tersebut.
Gunakan kamus dari soal nomor 3.
5. (Notasi algoritmik, Stack/Tumpukan)
Diberikan sebuah tumpukan yang dinyatakan dengan array 1 dimensi. Buatlah algoritma yang
menambah dan menghapus sebuah elemen dari tumpukan tersebut. Atas tumpukan bernilai 0 jika
tumpukan kosong, dan atas tumpukan bernilai 100 jika tumpukan penuh.
Kamus
Type Tumpukan = <T: array[1..100] of integer,
Atas: integer> {penunjuk ke elemen paling atas}
//Alamat elemen paling atas tumpukan S: Top(S)

H a l a m a n | 58
UTS Semester I 2010/ 2011

UJIAN TENGAH SEMESTER


11 Oktober 2010
100 menit
1. Pemrograman bahasa C.
Diberikan sebuah array dengan 100 tempat yang bertype integer.
a. Buatlah sebuah procedure untuk mengisi array sesuai kehendak pemakai (perhatikan jumlah
tempat yang dipergunakan tidak perlu selalu penuh = 100)
b. Buatlah sebuah fungsi max2 yang menghasilkan nilai terbesar diantara kedua parameter formal
input
c. Buatlah program utama yang memanggilnya dengan mempergunakan parameter aktualnya
untuk dipergunakan pada penyelesaian pengurutan nilai dari kecil ke besar dengan
menggunakan metode seleksi maksimum.
2. Diberikan sebuah array dengan 100 tempat yang bertype integer. Panggil procedure pada nomor 1
yang dapat menjamin bahwa array sudah terurut dari kecil ke besar. Buatlah sebuah algoritma yang
mencari sebuah nilai tertentu dengan metode Dikotomik/membelah dua.
3. Diberikan dua buah matriks A (berukuran m x n) dan B (berukuran n x l) yang sudah ada isinya.
Buatlah program dalam bahasa C untuk menghasilkan matriks C (berukuran m x l) yang merupakan
hasil perkalian matriks A dan B.
4. Diberikan sebuah list linier sederhanasatu kepala/HEAD dimana next pada elemen terakhir bernilai
nil. Elemen list berisi info dan penunjuk ke elemen kanan berikutnya. Kepala list bernama Atas
untuk menyatakan sebuah tumpukan. Buatlah algoritma dalam bentuk procedure untuk menambah
dan mengurangi sebuah elemen pada tumpukan tersebut. Lengkapi dengan program utama yang
mengendalikan pemakai yang hendak menambah atau mengurangi jumlah elemen dalam tumpukan.
5. Diberikan sebuah list linier sederhana dengan satu kepala dan tambahan sebuah penunjuk ke elemen
terakhir yang dapat dipergunakan untuk menambah sebuah elemen pada antrian. Elemen list berisi
info dan penunjuk ke elemen kanan saja. Buatlah algoritma dalam bentuk procedure untuk
menambah dan mengurangi sebuah elemen pada antrian tersebut. Lengkapi dengan program utama
yang mengendalikan pemakai yang hendak menambah atau mengurangi jumlah elemen pada
antrian.
6. Diberikan sebuah list linier dua kepala yang masing-masing menunjuk ke elemen pertama dan yang
terakhir. Elemen list berisi info, penunjuk ke elemen kiri dan juga ke kanannya dan bernilai nil
untuk elemen yang paling ujungnya.
a. Buatlah algoritma untuk menelusuri list (traversal)
b. Buatlah algoritma untuk menghapus elemen yang paling akhir/di belakang
c. Buatlah algoritma untuk menambah elemen yang di depan

H a l a m a n | 59
UTS Semester I 2011/ 2012

UJIAN TENGAH SEMESTER


17 Oktober 2011
100 menit

Dalam bentuk Bahasa C


1. Diberikan sebuah array satu dimensi bertipe real dengan 100 tempat. Array digunakan untuk
menyimpan nilai koefisien sebuah polinom. Definisi array sudah tidak kosong/sudah ada isinya.
Buatlah sebuah program dimana pemakai menentukan nilai x bertipe real yang mau dihitung. Dan
hitunglah berapa harga polinom tersebut disertai bentuk keluarannya seperti polinom yang
seharusnya.
2. Diberikan sebuah matriks n x n yang tidak kosong. Buatlah sebuah function yang memeriksa apakah
matriks tersebut adalah sebuah matrks identitas.
3. Sebuah tumpukan dinyatakan dengan sebuah array satu dimensi yang mempunyai 100 tempat.
Buatlah sebuah procedure yang mengisi tumpukan itu.
Dalam bentuk algoritma
4. Diberikan sebuah antrian yang dinyatakan dengan list linier sederhana satu kepala disertai penunjuk
ke elemen yang terakhir. Buatlah sebuah procedure yang menghapus sebuah elemen.
5. Diberikan sebuah list linier sederhana satu kepala yang mempunyai n elemen. Buatlah sebuah
procedure yang menambah elemen di posisi kedua list tersebut.
6. Diberikan sebuah list linier sederhana dua kepala dengan penujuk kiri dan kanannya yang mungkin
kosong. Buatlah sebuah program yang mengeluarkan semua informasi yang ada didalam elemen
list dari kedua arahnya.
7. Diberikan sebuah list linier sederhana sirkuler satu kepala dimana elemen yang terakhir menunjuk
ke elemen pertama dan mempunyai n elemen. Buatlah sebuah procedure yang menghapus elemen
pada posisi terakhir list tersebut.

H a l a m a n | 60
UAS Semester I 2009/20 10

UJIAN AKHIR SEMESTER


21 Desember 2009
110 menit

1. Array (Nilai: 20)


Diberikan sebuah array berdimensi satu dengan 20 tempat bertype karakter.
a. Buatlah prosedur yang memproses masukan user sejumlah karakter yang diakhiri dengan
karakter . (titik) dan menyimpannya ke dalam array.
b. Buatlah sebuah fungsi yang memeriksa apakah masukan karakter dari pemakai tersebut sama
bila dibaca dari depan sama dengan pembacaan dari belakang. Contohnya: kasur rusak, katak,
kodok.
2. Matriks dan Array (Nilai: 20)
Diberikan sebuah matriks Sparse, yaitu array dua dimensi yang berukuran sangat besar misalnya
500 x 500 artinya ada 250.000 elemen dalam matriks tersebut, dan nilai elemen yang tidak nol
sedikit. Contohnya, nilai yang tidak nol hanya 0,5% saja artinya hanya ada 1250 nilai saja. Maka
untuk menyimpan nilai yang tidak nol dari matriks Sparse 500 x 500 tersebut adalah dengan
menggunakan sebuah matriks baru 3 kolom. Indeks kolom pertama pada matriks 3 kolom yang
digunakan untuk menyatakan baris di mana nilai baris pada matriks Sparse, kolom kedua untuk
menyimpan nilai kolom Sparse dan kolom ketiga untuk menyimpan nilainya yang tidak nol dari
Sparse matriks. Nilai baris, kolom, dan nilai tidak nol dari Sparse matriks dimasukkan oleh pemakai
dan untuk mengakhirinya masukkan nilai -99 untuk baris dan juga untuk kolomnya dan 0 untuk
nilainya.
Buatlah sebuah program yang berisi:
a. Deklarasi kamus beserta Inisial dan final state program tersebut
b. Membuat matriks 3 kolom dari masukan user
c. Membaca dari matriks 3 kolom dan kemudian menuliskan ke layar dalam bentuk asli Sparse
matriks dengan anggapan ada sebuah layar yang mampu menulis sebesar/luas yang
diperlukannya.
3. List (Nilai: 20)
Diberikan sebuah polinom P yang dinyatakan dengan list linier berkait sederhana yang terurut
menurun derajatnya dari besar ke kecil.
Bentuk umum dari polinom adalah sebagai berikut:
n

Pn a n x n
i 0

H a l a m a n | 61
Dan diberikan kamus sbb:
type info : < koef : real;
derajat : integer;
next : address>
type polinom : address
Buatlah fungsi TurunanPolinom yang menghasilkan polinom dari suatu polinom P yang sudah
terdefinisi dan mungkin kosong. Jika P kosong, fungsi TurunanPolinom menghasilakn polinom
kosong.
Contoh: Polinom yang merepresentasikan 5x^3+2x akan menghasilkan polinom 15x^2+2.
4. Pohon, Rekursif, Bahasa C (Nilai: 20)
a. Definisikanlah struktur data PohonBiner dalam bahasa C. Setiap simpul memiliki info sebuah
bilangan bulat.
b. Buatlah sebuah prosedur rekursif untuk menampilkan semua info simpul dalam post order (kiri,
kanan, akar) ke layar.
5. Graf (Nilai: 20)
Diberikan kamus untuk representasi graf di bawah ini, buatlah procedure shortestDistance yang
menghitung jarak terpendek dari sebuah simpul awal yang ditentukan ke semua simpul lainnya, dan
menampilkan jaraknya ke layar.
Kamus
constant infinity:integer={terdefinisi, bernilai }
constant maxSimpul:integer=25
type adjacencyMatrix : <nSimpul:integer, M:array[1..maxSimpul,
1..maxSimpul] of integer>
{m[i,j]=bobot sisi (i,j), m[i,i]=0, m[i,j]= jika tidak ada
sisi (i,j)} Matriks adjacency:
Matriks adjacency:
1
2
3
4
5

1
0

Contoh lintasan terpendek simpul awal 1 ke semua simpul lainnya:


1 4: 5 (lintasan: 1 4)
1 2: 7 (lintasan: 1 4 2)
1 3: 8 (lintasan: 1 4 2 3)
1 5: 7 (lintasan: 1 4 5)

2
10
0

1
0
9
4

4
5
3

6
2
0

H a l a m a n | 62
Proses pencarian lintasan terpendek dari simpul awal 1:
Iterasi
Langkah
l
Inisialisasi
1
2
2
3
5
3
3
4
5
f.s.

Smin
1
0

2
10

Jarak
3
4

1
F
T

Dikunjungi
2 3 4
F F F

5
F

T
5+2
5+9
5+2

T
7+1

8+6>7
7

Sebagai contoh, pemanggilan shortestDistance(adj,1) menampilkan ke layar:


Jarak 1 ke 2 : 7
Jarak 1 ke 3 : 8
Jarak 1 ke 4 : 5
Jarak 1 ke 5 : 7
Salinlah kembali dan lengkapi prosedur berikut di kertas jawaban Anda.
procedure
shortestDistance(input
adj:adjacencyMatrix,
input
awal:integer)
{i.s: adj terdefinisi, adj.nSimpul>=2, 1<=awal<=nSimpul
f.s: menampilkan jarak dari simpul awal ke simpul lainnya}
Kamus
Langkah:integer
{deklarasi array jarak dan dikunjungi}
Algoritma
{inisialisasi jarak[i] dengan bobot dari simpul awal ke i}
{inisialisasi dikunjungi[i] dengan false}
{langkah 1: jarak[awal] diset , dikunjungi[awal] diset true}
{langkah 2 n-1}
langkah traversal [2..n-1]
{cari
simpul
smin
dgn
dikunjungi[smin]=false
dan
jarak[smin]=minimum(jarak)}
{dikunjungi smin diset true}
{update jarak[i] dari simpul yg belum dikunjungi jika
jarak[smin]+bobot[smin,i]<jaral[i]}
{menuliskan jarak[i] sebagai jarak dari simpul awal ke i, dengan
i awal}

H a l a m a n | 63
UAS Semester I 2010/20 11

UJIAN AKHIR SEMESTER


15 Desember 2010
120 menit

Soal 1 dan 2 dalam bahasa pemrograman C dan soal 3 dan 4 dalam bentuk algoritma.
1. Diberikan sebuah matriks integer yang berukuran tetap 100 x 100.
a. Buatlah dalam bentuk procedure untu kmengisi sebuah matriks yang berukuran N baris dan M
kolom. Dimana N dan M bernilai positif yang dimasukkan oleh pemakai dan pemakai juga
memasukkan nilai sebanyak N x M elemen ke dalam matriks tersebut.
b. Buatlah sebuah fungsi yang memeriksa apakah matriks yang terbentuk pada soal a) tersebut
berbentuk matriks simetris. Artinya elemen pada I, J sama nilainya pada J, I kecuali pada
diagonalnya bisa sembarang.
2. Diberikan sebuah list linier sederhana 1 kepala yang sirkuler, artinya elemen yang paling
belakang menunjuk ke elemen pertama.
a. Tuliskan definisi untuk keadaan list kosong, list 1 elemen dan list dengan banyak elemen.
b. Buatlah procedure traversal yang menelusuri semua elemen yang berada di dalam list
tersebut.
c. Bagaimana menambahkan 1 buah elemen di dalam list tersebut sebagai elemen pertama?
d. Bagaimana menghapus elemen yang paling belakang?
3. Diberikan sebuah pohon/tree biner dimana nilai elemen sub pohon kiri selalu lebih besar daripada
sub pohon kanannya, artinya nilai sub pohon kanan selalu lebih kecil dari sub pohon kirinya.
a. Jelaskan bagaimana terbentuk pohon tersebut dengan menambahkan setiap elemen mulai dari
pohon kosong.
b. Buatlah algoritma dalam bentuk function untuk menelusuri isi pohon dengan cara rekursif
untuk inorder.
c. Bagaimana cara isi nilai elemen sebuah node disimpan dlaam sebuah array satu dimensi?
d. Bagaimana mengikat sebuah tree menjadi sebuah list dengan batasan adalah deep first?
4. Diberikan sebuah graph berarah yang dinyatakan dengan matriks adjacency. Buatlah algoritma
yang menyatakan berapakah jumlah verteks lain yang terhubung langsung dengan sebuah verteks
tertentu ini.

H a l a m a n | 64
UAS Semester 1 2011/2 012

UJIAN AKHIR SEMESTER


8 Desember 2011
180 menit

1. Buatlah sebuah function untuk mencari sebuah nilai tertentu yang dinyatakan oleh pemakai dengan
cara dikotomik pada array yang sudah terurut dari besar ke kecil. Function ini menghasilkan sebuah
nilai integer yang menyatakan posisi ketemu pada array tersebut dan nilai 0 kalau tidak ketemu.
2. Buatlah sebuah procedure pengurutan dengan metode seleksi nilai yang terbesar dan menghasilkan
sebuah array yang terurut membesar.
3. Diberikan sebuah matriks sparse artinya sebuah matriks yang berukuran sangat besar. Dengan
bentuk tridiagonal, artinya nilai yang tidak nol berada pada ketiga posisi diagonal. Matriks ini
berukuran n x n (berbentuk bujur sangkar). Bagian atas dan bawah dari diagonal ini bernilai nol.
a. Buatlah sebuah algoritma yang memindahkan bentuk dan isi matiks sparse ini menjadi 3 buah
array 1 dimensi yang panjangnya sama.
b. Buatlah program bahasa C yang dapat menulis kembali menjadi bentuk sparse.
4. Diberikan sebuah list linier sederhana satu kepala dimana nilai next elemen terakhir menunjuk ke
elemen yang terdepan (paling depan) dan sebuah penunjuk ke elemen yang terakhir. List ini
dipergunakan untuk menyatakan antrian tempat duduk di ruang tunggu dokter dimana jumlah
tempat duduknya terbatas (misalnya hanya 20 tempat duduk) dan pasien tidak mau berpindah
tempat duduknya. Definisikan terlebih dulu isi informasi yang mau disimpan di dalam elemen list.
Kemudian buatlah algoritma untuk menambah dan menghapus sebuah elemen didalam list tersebut.
5. Diberikan sebuah pohon biner yang terbentuk dengan batasan sbb: nilai yang lebih besar terletak
disebelah kiri dan nilai yang lebih kecil diletakkan disebelah kanan. Bentkah pohon seperti ini
dengan menggunakan nomer HP yang Anda miliki. Contoh: 68123456789. Data yang dimasukkan
adalah 68, 81, 12, 23, 34, 45, 56, 67, 78, 89.
a. Jelaskan bagaimana terbentuk pohon tersebut dengan menambahkan setiap elemen mulai dari
pohon kosong.
b. Buatlah algoritma dalam bentuk procedure untuk menelusuri isi pohon dengan cara rekursif
untuk inorder.
c. Bagaimana cara isi nilai elemen sebuah node disimpan dalam sebuah array satu dimensi?
d. Bagiamana mengikat sebuah tree menjadi sebuah list dengan batasan kedalaman terlebih
dahulu.
6. Diberikan sebuah graph seperti gambar dibawah ini:
a. Buatlah algoritma yang mengubah struktur data graph dalam bentuk matriks adjacency

H a l a m a n | 65
b. Buatlah algoritma yang menyatakan apakah berapakah jumlah vertex lain yang terhubung
langsung dengan sebuah vertex tertentu ini
c. Buatlah algoritma yang mengubah struktur data graph dalam bentuk list incidence
d. Carilah nilai jarak yang terpendek/terkecil dari vertex 1 ke vertex 6 dan jelaskan cara kerja
menghitungnya.
5

H a l a m a n | 66

IF2140
Pemodelan Basis Data

H a l a m a n | 67
UTS Semester I 2005/ 2006

Ujian Tengah Semester


IF3111 BASIS DATA
Semester I 2005/2006
Jumat 14 Oktober 2005
Waktu 90 menit
Kasus : Language Training Center
Sebuah Language Training Center memiliki sejumlah program training, seperti Pre-School. Children,
Teenagers, General, Conversation, Business, TOEFL Preparation, IELTS Preparation. Masing-masing
program tersebut terdiri dari beberapa tingkat. Setiap periode akan dibuka kelas untuk tingkat-tingkat
program yang diminati. Jika peminat cukup banyak akan dibuka sejumlah kelas parallel untuk setiap
tingkat program, sebagai contoh program teenagers tingkat 4 untuk kelas parallel B yang dibuka di
bulan januari2005, kelas tersebut dinamai kelas teenagers-4B Periode Januari 2005.
Setiap peserta/siswa bisa mengikuti mulai dari tingkat tertentu sesuai hasil placement test dan jika lulus
pada tingkat tsb, untuk periode berikutnya dapat melanjutkan ke kelas tingkat yang lebih tinggi. Pada
setiap awal periode siswa harus mendaftar ke kelas yang akan diikutinya. Sedangkan biaya training bisa
dibayarkan secara bertahap untuk setiap periode.
Pengajar terdiri atas Native teacher dan Local teacher. Selain itu, masing-masing keduanya juga
dikategorikan dalam full timer dan part timer. Setiap kelas akan diajar oleh seorang pengajar sepanjang
periode, dan seorang pengajar dapat dialokasikan ke banyak kelas di setiap periode berjalan.
Untuk mendukung pengajaran, terdapat buku pegangan untuk tiap tingkat program. Setiap siswa
dianjurkan memiliki buku pegangan tsb di tiap kelas/ tingkat program. Selaim itu, setiap kelas akan
dialokasikan ke satu ruang belajar tertentu pada setiap periode, dan setiap ruang dapat dialokasikan
untuk banyak kelas.

Pertanyaan :
1. Buatlah E-R Diagram lengkap dari kasus tersebut diatas, tentukan sendiri atribut-atribut yang
diperlukan di setiap entity set dan relationship set, termasuk key atributnya. Jika diperlukan
untuk memperjelas, berilah catatan dan asumsi-asumsi lain seperlunya.
2. Buatlah skema relasi/ skema basis data dari E-R Diagram tersebut.
3. Terkait dengan integritas basis data, apa yang harus dilakukan pada basis data
a. Jika suatu nama program harus diubah
b. Jika seorang pengajar untuk suatu kelas tertentu harus diganti dengan pengajar lain
4. a. secara parsial, organisasi file apa yang paling cocok untuk menyimpan data kelas berikut
alasan pemilihannya
b. jika diketahui data setiap kelas berukuran 20 byte, mana lebih baik, data kelas tsb disimpan
pada file dengan ukutan 512 byte/block atau pada file berukuran 1024 byte/block. Dengan
catatan keduanya menyimpan dengan densitas/blocking factor 100%.

UTS Semester I 2007/ 2008

Ujian Tengah Semester


IF3111 Basis Data

H a l a m a n | 68
Semester 1 2007/2008
22 Oktober 2007
Waktu 90 menit
Basis Data MotoGP
Untuk satu musim, MotoGP dunia diselenggarakan dalam sejumlah seri balapan di berbagai sirkuit di
dunia, seperti sirkuit Shanghai di China, sirkuit Phillip Islang di Australia, sirkuit Le Mans di Prancis,
dsb. Pada satu musim, setiap sirkuit hanya menyelenggarakan satu seri balapan. MotoGP
diselenggarakan dalam tiga kelas, yaitu kelas 125c, kelas 250cc, dan kelas 800cc. MotoGP diikuti oleh
sejumlah tim peserta, seperti Marlboro Ducati, Fiat Yamaha, Repsol Honda, dsb. Setiap pabrikan dapat
mendukung lebih dari satu tim. Selain pabrikan motor, setiap tim juga didukung oleh pabrikan ban
(seperti Bridgestone, Michellin, dsb).
Pada setiap seri balapan, setiap pembalap dapat menggunakann motor (chasis, enginee, jenis ban) yang
berbeda. Hasil balapan berupa poin yang diperoleh setiap pembalap dan spesifikasi motor yang
digunakan oleh setiap pembalap pada setiap seri akan dicatat di basis data.
Dengan basis data tersebut, setiap saat dapat dihasilkan informasi antara lain tentang daftar tim di setiap
kelas dengan pembalap dan informasi motornya (nama pembalap, nama tim, pabrikan motor, type
motor), daftar sirkuit (nama sirkuit, Negara, jadwal waktu pelaksanaan), daftar pembalap per Negara
asal, dll.
Pertanyaan:
1. Buatlah ER Diagram lengkap untuk kasus tersebut di atas. Tuliskan juga asumsi-asumsi jika
diperlukan untuk memperjelas model yang dibuat. tentukan atribut-atribut dan key atributnya
untuk setiap entity set dan relationship set.
2. Buatlah Skema Basis Data (model relasional) dari ER Diagram soal no 1 di atas.
Diketahui skema basis data sebagai berikut:
T = (tn, ad, tcon, ow, pm)
R = (nb, nm, rcon, cat, tn)
S = (cn, cir, scon, fr, tm)
RS = (nb, cn, ch, en, wt, cl, rr)
3. Buatlah query dalam aljabar relasional untuk mendapatkan informasi
a. nb, nm, tn untuk cat=3
b. nm, untuk pm=KTM
c. nm, rcon untuk cir=IP dan rr>4
d. cir, tn, nm, tn untuk rr=1

UTS Semester I 2008/ 2009

Ujian Tengah Semester


IF2034 Basis Data

Waktu : 100 menit

H a l a m a n | 69
Kamis, 23 Oktober 2008

Sifat : Closed Book

1. Pengertian Sistem Basis Data


a. Jelaskan apa yang dimaksud dengan Basis data, sistem basis data, dan sistem manajemen basis
data.
b. data dapat dipandang dalam tiga level abstraksi. Sebutkan dan jelaskan ketiga level abstraksi
tersebut dan gambarkan keterhubungan ketiga level abstraksi tersebut di dalam arsitektur
ANSI/SPARC.
c. Independensi data merupakan hal yang penting di dalam sistem basis data. Berikan penjelasan
mengenai independensi data, dan jenis independensi data yang ada.
2. Indexed Sequential File adalah salah satu struktur penyumpanan yang dapat digunakan untuk
penyimpanan data di secondary storage. Pada struktur ini, data disimpan secara terurut berdasarkan
nilai atribut kunci dan selain file yang menyimpan data terdapat pula file yang menyimpan indeks
untuk mempercepat akses terhadap data berdasarkan nilai dari atribut kunci untuk indeks.
a. Jelaskan prinsip penggunaan indeks untuk mempercepat akses terhadap data, terutama untuk file
yang jumlah datanya sangat besar (sehingga file indeksnya masih cukup besar).
b. Jika diketahui bahwa ukuran block adalah 4 kB. Suatu file terdiri dari 5000 record, dan ukuran
setiap record adalah 200 bytes. Ukuran setiap record pada file indeks adalah 20 bytes. Berikan
ilustrasi perbandungan waktu akses tanpa dan dengan indeks untuk file ini.
3. Billing hotel untuk seorang customer yang menginap pada hotel tersebut diterbitkan berdasarkan
informasi sebagai berikut:
a. Jumlah hari customer tersebut menginap
b. Room rate dari kamar yang dipakai
c. Voucher discount untuk room rate, jika dimiliki oleh customer tersebut
d. layanan hotel yang dimanfaatkan selama menginap, jika ada.
Hotel tersebut memiliki dua kategori layanan, yaitu laundry dan room service. Untuk setiap kategori,
penetapan harga layanan bergantung pada jenis layanan, unit cost untuk layanan tersebut dan jumlah
layanan. Buatlah E-R model untuk sistem billing tersebut. Tuliskan semua asumsi yang anda
gunakan dalam pembuatan model tersebut.

H a l a m a n | 70
4. Diberikan diagram ER berikut ini:

Ubahlah model ER tersebut menjadi model relasional, untuk setiap relasi (tabel) yang dihasilkan
pada model relasional, nyatakan primary key dan foreign key (jika ada, termasuk relasi yang diacu)
dari relasi tersebut. Berikan penjelasan singkat terhadap proses konversi yang dilakukan

H a l a m a n | 71

UTS Semester II 2009/ 2010

Ujian Tengah Semester 2 2009/2010


IF2034 BASIS DATA
Kamis 18 Maret 2010
Waktu 110 menit
SOAL
1. Independensi data dan pemodelan data
a. Apakah yang dimaksud dengan independensi data? Berikan penjelasan mengenai kaitan
antara independensi data dengan arsitektur ANSI/SPARC yang membagi level abstraksi
data menjadi 3.
b. Salah satu model data generasi pertama adalah model jaringan (network model). Menurut
pendapat anda, apakah model jaringan ini mengimplementasikan independensi data?
Berikan penjelasan singkat.
2. Pemodelan data Entity-Relationship dengan kasus sebagai berikut:
PT KAI adalah penyedia layanan transportasi dengan sarana kereta api di Indonesia. salah satu
layanannya adalah pengangkutan penumpang. PT KAI memiliki banyak jenis KA pengangkut
penumpang, contoh: Argo Anggrek, Argo Wilis, TUrangga, Prahyangan, dsb. Ada beberapa
kategori tingkat layanan yang dimiliki yaitu Eksekutif, Bisnis, dan Ekonomi. Setiap jenis KA
dapat memiliki lebih dari satu kategori layanan, contoh KA Parahyangan memiliki kategori
layanan Eksekutif dan kategori layanan Bisnis. Setiap jenis juga memiliki beberapa jadwal
rangkaian perjalanan KA, sebagai contoh:
- KA nomer 10064 adalah KA Parahyangan yang melayani jurusan Jakarta Gambir menuju
Bandung dengan jadwal berangkat pukul 05.30 dan tiba pukul 08.30
- KA nomor 10067 adalah KA Parahyangan yang melayanin jurusan Banduung menuju
Jakarta Gambir dengan jadwal berangkat pukul 09.00 dan tiba pukul 12.00
Untuk setiap rangkaian, diidentifikasi juga rute kota-kota yang dilalui dan berhenti, contoh KA
nomor 10006 Argo Wilis Bandung Surabaya akan melalui rute Bandung Tasikmalaya
Kroya Yogyakarta Solo Madiun Kertosono Surabaya Gubeng. Waktu berangkat dari
satu kota dan waktu tiba di kota berikutnya juga diidentifikasi.
Selain rencana perjalanan tersebut di atas, realisasi perjalanannya juga dicatat. Data yang
dicatat antara lain:
Realisasi perjalanannya yang mencatat nomor KA, tanggal, jam berangkat dari stasiun asal
dan jam tiba di tujuan akhir
- Lokomotif yang digunakan untuk menarik setiap rangkaian perjalanan KA penumpang
- Masinis yang ditugaskan untuk memimpin perjalanan setiap rangkaian.
Lokomotif memiliki data antara lain nomor lokomotif, merek dan tipe lokomotif, Negara
pembuat, tahun pembuatan, dan catatan lain yang diperlukan.
-

Sedangkan masinis diidentifikasi antara lain dengan NIP, nama, alamat, kota, dan pangkat.
Buatlah Entity Relationship Diagram dari kasus diatas. Jika diperlukan, tuliskan asumsiasumsi yang digunakan untuk meperjelas E-R Diagram yang dibuat.

H a l a m a n | 72
3. Organisasi File apa yang cocok untuk menyimpan data tentang rangkaian KA di atas dan
jelaskan alasannya
4. Diberikan Entity-Relationship Diagram berikut ini:

Lakukan transformasi E-R Diagram di atas menjadi model data relational. Untuk setiap relasi
pada model relasional yang anda bangun, berikan keterangan mengapa relasi tersebut perlu
dibentuk serta kemungkinan permasalahan yang dapat muncul dengan adanya relasi tersebut
(jika ada).

H a l a m a n | 73
UTS Semester II 2011/ 2012

Ujian Tengah Semester 2 2011/2012


IF2034 BASIS DATA
Kamis 15 Maret 2012

1. Pemodelan data Entity-Relationship dengan kasus sebagai berikut:


Sebuah perusahaan mengelola penyewaan properti, baik yang dimiliki oleh pribadi maupun organisasi
bisnis. Setiap pemilik properti diberi nomor identitas unik, dan perusahaan mencatat data nama (khusus
bagi pemilik pribadi terdiri dari nama depan dan nama belakang), alamat (terdiri dari nama jalan, nomor,
kota, dan provinsi), alamat email, dan daftar nomor telepon. Bagi pemilik organisasi bisnis, dicatat pula
jenis dan deskripsi bisnisnya. Setiap properti diidentifikasi melalui nomor properti yang unik, dan
dicatat alamat dan tipenya.
Penyewa sebuah properti bisa pribadi atau organisasi bisnis. Setiap perjanjian sewa diidentifikasi
menggunakan sebuah nomor yang unik. Perusahaan mencatat tanggal penandatanganan perjanjian
sewa, serta tanggal awal dan akhir penyewaan. Seorang penyewa dapat menyewa banyak properti.
Untuk setiap penyewa dicatat nama, alamat, alamat email, dan daftar nomor telepon yang dapat
dihubungi. Setiap penyewa akan memiliki sebuah nomor identitas unik dan dilayani oleh seorang
karyawan perusahaan.
Setiap karyawan perusahaan diidentifikasi menggunakan sebuah nomor yang unik, dapat dicatat data
nama, alamat, alamat email, daftar nomor telepon, jenis kelamin, dan gaji. Sebuah properti dikelola
oleh sejumlah karyawan perusahaan, ada karyawan yang melakukan pengelolaan secara umum dan ada
pula yang bertanggung jawab terhadap sebuah pekerjaan perawatan tertentu bagi properti tersebut.
Setiap jenis pekerjaan perawatatan yang dapat dilakukan terhadap sebuah properti diberi identitas unik
dan dicatat nama serta deskripsinya. Seorang karyawan dapat mengelola sejumlah properti, dan untuk
masing-masing properti karyawan tersebut mungkin bertanggung jawab untuk pekerjaan perawatan
yang berbeda.
Sebuah properti yang tidak sedang disewa dapat ditinjau (dilihat bagian luar dan dalamnya) oleh calon
penyewa. Perusahaan mencatat tanggal dan waktu peninjauan sebuah properti, termasuk komentar yang
diberikan oleh calon penyewa, dan karyawan yang mendampingi. Setiap calon penyewa yang akan
melakukan peninjauan terhadap sebuah properti harus terdaftar sebagai penyewa, meskipun akhirnya
tidak jadi menyewa properti tersebut maupun properti lainnya. Peninjauan sebuah properti oleh seorang
penyewa dapat dilakukan berkali-kali.
Buatlah Entity-Relationship Diagram dari kasus di atas. Jika diperlukan, tuliskan asumsi-asumsi yang
digunakan dalam melakukan pemodelan E-R Diagram.
2. Diberikan Entity-Relationship Diagram berikut ini:

H a l a m a n | 74

Lakukan transformasi E-R Diagram di atas menjadi model data relasional. Untuk setiap relasi pada
model relasional yang Anda bangun, berikan alasan relasi tersebut dibentuk serta kemungkinan
permasalahan yang dapat muncul dengan adanya relasi tersebut (jika ada).

H a l a m a n | 75
UTS Semester II 2011/ 2012

Ujian Tengah Semester


Selasa, 15 Maret 2011
Waktu: 100 menit

1. Sebuah airport melayani pesawat-pesawat yang memanfaatkan bandara. Beberapa hal terkait
dengan pemodelan data tersebut adalah:
Setiap pesawat memiliki nomor registrasi, dan masing-masing pesawat terbang memiliki
sebuah model spesifik.
Bandara mengakomodasi sejumlah jenis model pesawat, dan masing-masing model
diidentifikasi dengan nomor model, data kapasitas penumpang, dan berat pesawat.
Sejumlah teknisi bekerja di bandara tersebut. Informasi tentang teknisi yang perlu disimpan
adalah nama, alamat, nomor telepon, dan gaji masing-masing teknisi.
Setiap teknisi memiliki keahlian pada satu atau lebih model pesawat, dan keahliannya dapat
tumpang tindih dengan teknisi lain.
Pengendali lalu lintas udara atau air traffic controller (ATC) harus memiliki hasil pemeriksaan
medis tahunan, dan tanggal pemeriksaan terbarunya harus disimpan.
Semua karyawan bandara termasuk teknisi dan ATC, milik serikat buruh yang memiliki nomor
keanggotaan. Setiap karyawan secara unik diidentifikasi oleh nomor jaminan social.
Bandara ini memiliki sejumlah jenis tes yang digunakan secara berkala untuk memastikan
bahwa pesawat masih layak terbang. Setiap jenis pengujian memiliki nomor tes Federal
Aviation Administration (FAA), nama, dan skor yang diperoleh pesawat yang diujinya.
FAA mensyaratkan bandara untuk dapat melacak setiap kali pesawat terbang yang diuji oleh
teknisi yang ditugaskan, serta dengan menggunakan jenis tes yang diberikan. Untuk setiap
aktivitas pengujian, informasi yang dibutuhkan adalah tanggal, jumlah jam yang dihabiskan
oleh teknisi untuk melakukan tes, dan skor hasil pengujian pesawat.
Buatlah pemodelan data bandara tersebut dalam representasi ERD. Tunjukkan primary key dari
masing-masing entity setnya, serta partisipasi dan cardinality constraints pada masing-masing
relationship setnya. Berikan pula asumsi-asumsi yang diperlukan serta penjelasan dari setiap entity
set dan relationship set untuk memperjelas pemodelannya.
2. Lakukan transformasi E-R Diagram yang sudah dibuat menjadi model data relasional. Untuk setiap
relasi pada model relasional yang dibangun, berikan keterangan mengapa relasi tersebut perlu
dibentuk serta kemungkinan permasalahan yang dapat muncul dengan adanya relasi tersebut jika
ada.

H a l a m a n | 76
UTS Semester II 2013/ 2014

SOAL UTS IF2034 : Basis Data


Kamis, 21 Maret 2013, waktu : 90 menit
1. Apa yang dimaksud dengan primary key, candidate key, alternate key, superkey, dan foreign key
pada model basis data? Jelaskan dan berikan contohnya!
2. Jelaskan persamaan dan perbedaan antara model network dan hirarkis! Bagaimana penggambaran
kardinalitas one-to-many dan many-to-many pada model network dan model hirarkis?
3. Diberikan ERD berikut ini:

Lakukan transformasi ERD di atas menjadi model data relasional. Untuk setiap relasi pada model
relasional yang dihasilkan, berikan alasan mengapa relasi tersebut perlu dibentuk, serta
kemungkinan permasalahan yang dapat muncul dengan adanya relasi tersebut (jika ada).
4. Satu rumah sakit bermaksud untuk mengelola data keperluan rumah sakit yang berupa: layanan,
rekam medis pasien, dan farmasi. Layanan dibagi menjadi tiga jenis, yaitu: UGD, rawat jalan, dan
rawat inap. Setiap layanan mempunyai sistem tarif yang berbeda. Untuk setiap layanan yang
diberikan kepada pasien akan dicatat kegiatan yang dilakukan mulai dari diagnosa hingga
pengobatan yang diberikan.

H a l a m a n | 77

Pada layanan UGD dicatat: daftar pasien yang berkunjung, daftar riwayat kesehatan pasien, hasil
pemeriksaan pasien, tindakan kepada pasien, fasilitas yang digunakan untuk penanganan pasien,
dan obat yang diberikan.
Pada layanan rawat jalan akan dicatat: daftar riwayat kesehatan pasien, hasil pemeriksaan pasien,
tindakan kepada pasien, termasuk data kapan berkunjung, rujukan (jika ada), dan obat yang
diberikan.
Pada layanan rawat inap akan dicatat: data pasien yang masuk, pindah kamar, keluar, dan informasi
mengenai pasien yaitu: biografi pasien, demografi, dan penanggung jawab pasien. Pada layanan
ini juga dicatat tindakan-tindakan perawatan yang diberikan, termasuk hasil pengukuran denyut
nadi, suhu badan, tekanan darah, dan pernafasan. Juga dicatat riwayat penyakit, pemeriksaan
jasmani, obat yang diberikan, hasil pemeriksaan laboratorium, gizi, dan radiologi. Pada layanan
rawat ini juga dicatat penggunaan ruangan dan tempat tidur, serta biaya-biaya keperawatan seperti
pemakaian perawatan, oksigen, dan fasilitas tambahan.
Buatlah ERD dari kasus di atas! Tuliskan asumsi-asumsi yang digunakan dalam melakukan
pemodelan ERD.

Catatan:
Bobot penilaian adalah sbb. (berurutan sesuai no. soal) : 15%, 15%, 30%, 40%

Ujian Akhir Semester II 2008/2009

H a l a m a n | 78
UTS Semester I 2015/ 2016

UJIAN TENGAH SEMESTER


PEMODELAN BASIS DATA IF2140
2015
Soal 1. Pemodelan Entity-Relationship (Bobot : 30%)
Sebuah perusahaan yang menjual perlengkapan rumah tangga ingin mengembangkan
basisdata untuk menyimpan data pelanggan, karyawan, berikut data pemesanan barang dari
semua cabangnya. Berikut ini adalah deskripsi kebutuhan datanya.
Buatlah model entitiy-relationship (model ER) dalam bentuk diagram ER untuk memodelkan
persoalan di atas selengkap-lengkapnya. Gunakan nama-nama yang jelas sesuai yang tertera
dalam deskripsi di atas. Jika ada aspek yang tidak dapat ditangkap dengan model ER,
tambahkan sebagai keterangan. Buat asumsi sendiri untuk hal-hal yang tidak disebutkan
secara jelas dalam deskripsi di atas dan tuliskan asumsi-asumsi tersebut.
Data pelanggan yang akan disimpan adalah nomor ID (bisa no. KTP atau SIM atau paspor,
unik untuk setiap pelanggan), nama, lokasinya (alamat, kota, provinsi, dan kode pos), nomor
telepon (bisa lebih dari satu nomor per pelanggan), tanggal lahir, dan umur (dihitung
berdasarkan tanggal lahir). Seorang pelanggan harus terdaftar di satu cabang (tidak boleh
lebih). Namun, sebuah cabang bisa memiliki banyak pelanggan, atau tidak punya pelanggan
sama sekali. Untuk setiap cabang, data berikut disimpan: nomor cabang (unik), nama cabang,
lokasi (alamat, kota, provinsi, dan kode pos), dan luas bangunan kantor (dalam meter
persegi). Seorang pelanggan digolongkan menjadi pelanggan eksekutif atau pelanggan biasa
(tidak bisa menjadi keduanya sekaligus). Seorang pelanggan eksekutif memiliki seorang
karyawan yang berperan sebagai konsultan dan untuknya dicatat discount-rate khusus.
Pelanggan biasa tidak memiliki fasilitas tersebut, tetapi untuknya disimpan poin dari
berbagai transaksi yang dilakukannya. Perusahaan ini memperkerjakan banyak karyawan.
Untuk setiap karyawan dicatat nomor karyawan (unik), nama, lokasinya (alamat, kota,
provinsi, dan kode pos), nomor telepon (bisa lebih dari satu nomor per karyawan), tanggal
mulai bekerja, gaji pokok, tanggal lahir, umur (dihitung berdasarkan tanggal lahir). Setiap
karyawan harus terdaftar hanya di satu cabang.
Setiap pelanggan dapat memiliki satu kartu atau lebih, atau tidak memiliki kartu sama sekali.
Kartu merupakan kartu kredit atau kartu debit yang dikeluarkan suatu bank yang digunakan
untuk transaksi pembelian dengan perusahaan ini. Data akun yang disimpan adalah nomor
kartu (unik), jenis kartu (kredit atau debit), bank yang mengeluarkan kartu, tanggal terakhir
transaksi dengan kartu tersebut, besarnya transaksi terakhir dengan kartu tersebut, dan
tanggal kadaluwarsa kartu. Setiap kartu hanya memiliki seorang pemilik dan harus dicatat
siapa pemiliknya.
Suatu cabang menjual semua jenis barang atau beberapa jenis barang tertentu. Untuk setiap
barang, data berikut disimpan: kode barang (unik), deskripsi, warna, ukuran, jenis, dan
jumlah ketersediannya untuk cabang tertentu.

H a l a m a n | 79

Seorang pelanggan dapat melakukan pemesanan barang melalui suatu cabang (tidak harus
merupakan cabang di mana si pelanggan terdaftar). Untuk setiap pesanan, nomor pesanan
dicatat (nomor pesanan ini unik untuk setiap cabang, artinya nomor pesanan yang sama dapat
berulang untuk cabang yang berbeda), berikut tanggal pesanan, pelanggan mana yang
melakukan pemesanan (hanya satu pelanggan per pesanan), serta karyawan mana yang
menanganinya (satu karyawan untuk satu pesanan). Jika pesanan akan dibayar menggunakan
kartu (tidak harus), harus dicatat pula kartu mana yang digunakan (catatan: kartu yang
digunakan harus merupakan kartu dari pelanggan yang memesan). Selanjutnya, dicatat pula
barang-barang yang dipesan berikut jumlah masing-masingnya (minimum satu barang untuk
satu pesanan).
Sebuah barang dapat disusun dari satu atau lebih komponen yang merupakan suatu barang
juga. Sebagai contoh: satu set meja makan dapat terdiri atas 4 buah kursi makan, 1 buah meja
makan, dan 1 set kain meja makan (yang terdiri atas 1 buah taplak meja dan 4 buah tatakan
piring makan). Untuk setiap komponen, harus dicatat jumlah yang dibutuhkan untuk
menyusun barang yang bersangkutan (misalnya untuk set meja makan di atas, jumlah kursi
makan yang dibutuhkan adalah 4).
Soal 2. Transformasi ER Model ke Model Relasional (Bobot : 30%)
Transformasikan diagram ER yang diberikan pada halaman selanjutnya ke dalam model
relasional selengkap-lengkapnya. Daftarkan pula foreign key refrence yang ada. Jika ada
aspek dalam diagram ER yang tidak dapat dipindahkan ke model relasional, tuliskan sebagai
keterangan.
Contoh penulisan relasi : A = (A1, A2, A3)
Contoh menuliskan foreign key reference : A(A1) B(B1) (Lihat contoh pada soal 3 untuk
lebih jelasnya)
Soal 3. Aljabar Relasional (Bobot : 30%)
Diketahui skema basisdata relasional di sebuah klinik sebagai berikut.
Pasien = (IDPasien, Nama, Alamat, Kota, NoTelp, TanggalLahir)
Dokter = (IDDokter, Nama, Alamat, Kota, NoTelp, Spesialisasi, NoIzinPraktek)
Pemeriksaan = (IDPasien, IDDokter, TanggalPeriksa, Diagnosis, Biaya, Keterangan)
Foreign key references :
Pemeriksaan(IDPasien) Pasien(IDPasien)
Pemeriksaan(IDDokter) Dokter(IDDokter)
Keterangan :
1. Atribut relasi yang digaris bawahi merupakan primary key dari relasi
2. Foreign key reference A(A1) B(B1), artinya atribut A1 dari relasi A merupakan
foreign key reference ke atribut B1 dari relasi B.

H a l a m a n | 80

Tuliskan ekspresi aljabar relasional untuk beberapa query berikut :


a. Menampilkan IDPasien, Nama, NoTelp semua pasien yang tinggal di kota Bandung dan
lahir di tahun 1988.
Untuk mendapatkan tahun suatu tanggal, gunakan fungsi : year(<atribut bertipe date>).
b. Menampilkan daftar kota yang ditinggali pasien, namun tidak ditinggali oleh seorang
dokter pun.
c. Menampilkan detil pemeriksaan untuk dokter dengan ID = D2131231 untuk
pemeriksaan pada tahun 2014. Atribut yang ditampilkan adalah IDDokter, Nama[Dokter],
NoTelp[Dokter], TanggalPeriksa, IDPasien, Nama[Pasien], Diagnosis, Biaya.
Untuk mendapatkan tahun suatu tanggal, gunakan fungsi year (lihat soal a).
d. Menampilkan banyaknya pasien yang diperiksa per dokter dengan biaya pemeriksaan
>500.000 rupiah.
e. Menambahkan data pemeriksaan untuk pasien dengan ID = P098723 yang diperiksa oleh
dokter dengan ID = D2131231, tanggal pemeriksaan = 2015-10-13. Diagnosis, biaya
pemeriksaan, dan keterangan belum diketahui nilainya.
Soal 4. Pengantar Basis Data (Bobot : 10%)
Jelaskan level abstraksi data menurut arsitektur ANSI Sparc. Selanjutnya, jelaskan
mengapa level abstraksi seperti ini diperlukan dalam pengembangan basisdata.

H a l a m a n | 81
UAS Semester I 2007/20 08

UAS IF3111 Basis Data


Senin, 17 Desember 2007
Waktu: 120 Menit
1.

2.

3.

4.

Dua buah himpunan FDs didefinisikan terhadap relasi R = {A, B, C, D, E}, yaitu:
FD1 = {AB C, A B, D AC, DC E}
FD2 = {A BC, D AE}
a. Apakah FD1 dan FD2 menyatakan batasan yang sama terhadap relasi R? Jelaskan jawaban
anda.
b. Tuliskan minimum cover bagi FD1. Jelaskan jawaban anda.
Sebuah relasi R = {A, B, C, D, E, F, G} memenuhi himpunan FD berikut:
F = {A B, BC DE, AEFD DG}
a. Dengan menggunakan tiga aturan dasar aksioma Armstrong, periksa apakah FD ACF
DG merupakan implementasi dari F.
b. Tuliskan closure (AC).
Didefinisikan relasi-relasi berikut ini:
S = (S#, SN, SC)
P = (P#, PN, PL, PC)
SP = (S#, P#, Q)
Dengan relasi S yang menyimpan data Supplier, P untuk Product, dan SP untuk
informasi suplai sebuah produk oleh Supplier. Atribut S# untuk supplier ID, SN untuk
nama supplier, SC untuk kota asal supplier, P# untuk product ID, PN untuk nama
produk, PL untuk warna produk, PC untuk kota tempat produksinya, dan Q untuk
jumlah suplai.
Tuliskan dalam i) Aljabar Relasional, ii) Kalkulus Relasional Tuple, iii) Kalkulus Relasional
Domain, iv) SQL perintah untuk mendapatkan informasi berikut:
a. Daftar produk (semua atribut) yang diproduksi di kota New York.
b. Daftar nama supplier yang pernah mensuplai produk berwarna red yang diproduksi di kota
yang sama dengan kota asal supplier tersebut.
Diberikan definisi system berikut ini:
Sistem Informasi Kolektor Perangko
Sistem ini menyimpan informasi mengenai Perangko, Kolektor, dan transaksi pembelian
perangko oleh seorang kolektor.
Data yang disimpan untuk setiap perangko adalah: ID perangko (P# - unik), Seri, Tahun
penerbitan, Propinsi. Untuk setiap Propinsi terdapat suatu Percetakan perangko yang
terdefinisi, dan setiap percetakan hanya ada di satu propinsi. Terdapat sejumlah tingkat
kualitas perangko, yang dapat ditentukan berdasarkan Seri dan Tahun penerbitannya.
Data yang disimpan untuk setiap Kolektor adalah: ID kolektor(K# - unik), Nama, Proyek
yang sedang dikerjakan, Perusahaan tempat bekerja. Setiap proyek hanya diberikan untuk
suatu perusahaan dengan suatu nilai Anggaran yang telah ditetapkan.
Data yang disimpan terkait transaksi pembelian perangko oleh seorang kolektor adalah:
tanggal tansaksi dan jumlah pembelian pada tanggal tersebut.
Buatlah skema basis data yang paling baik, yang memenuhi ketiga sasaran proses perancangan
basis data relasional, tanpa melalui tahap pembangunan Diagram E-R. Berikan penjelasan untuk
jawaban yang diberikan.

H a l a m a n | 82
UAS Semester II 2008/20 09

IF2034 BASIS DATA


Kamis, 28 Mei 2009, Waktu 120 Menit
KASUS:
Suatu perusahaan Furnitur membutuhkan sistem pengolahan penjualan produk-produknya. Pada
umumnya customernya adalah para reseller yang akan menjual langsung produknya kepada endcustomer (pengguna). Untuk setiap transaksi penjualan kepada setiap reseller dapat terdiri dari banyak
produk dan masing-masing produk dapat terdiri dari banyak quantity. Pembelian di suatu hari oleh
setiap reseller akan digabungkan dalam satu nota order pembelian.
Sebagai gambaran, nota transaksinya adalah:

Soal :
1. (a) Buatlah model konseptual dari kasus di atas dalam bentuk Entity-Relationship Diagram dan
(b) tuliskanlah Skema Basia Data sebagai hasil transformasi dari Entity-Relationship Model
tersebut ke Relational Model
2. (a) Tentukan Functional Dependencies dari setiap atribut yang ada dalam Skema Basis Data
tersebut di atas, (b) tentukan Candidat Keys dari setiap skema relasinya, dan (c) Tuliskanlah proses
dan hasil Normalisasinya (hingga BCNF atau 3NF)
3. Buatlah SQL untuk mendapatkan informasi
(a) Daftar Reseller lengkap dengan nama, alamat, kota, dank ode pos yang melakukan transaksi
pada tanggal 27 Mei 2009
(b) Nota Pengiriman barang yang dibeli oleh reseller bernama Toko Mebel pada tanggal 27 Mei
2009 yang meliputi informasi: kode produk, deskripsi, jenis finishing, dan quantity
4. Jelaskan hal-hal berikut ini terkait dengan perancangan basis data secara umum yang baik, yaitu (a)
Lossless-join Decomposition, dan (b) Dependency Preservation
Serta hal-hal yang menyangkut Integrity Constraints, yaitu (c) Domain Constraints, (d) Entity
Constraints, dan (e) Business Rules.

H a l a m a n | 83
UAS Semester II 2009/20 10

Ujian Akhir Semester II 2009/2010


IF2034 Basis Data

Waktu : 120 Menit


Sifat : Closed Book

1. Kelompok 1
1.1. Catatan kegiatan aktifitas suatu organisasi dalam suatu periode disimpan dalam suatu file
dengen organisasi sequensial. Data tersebut berjumlah 5000 dan setiap data besarnya
50byte. Jika ukuran block data penyimpanan sebesar 1 Kbyte (1024 byte), berapa kali I/O
transfer harus dilakukan untuk membaca seluruh data dalam file sequensial tersebut?
1.2. Mahasiswa perguruan tinggi XY angkatan 2008 total berjumlah 10000 mahasiswa. Fata
mahasiswa tersebut disimpan dalam file digital dan file tersebut sering sekali diakses.
Sebutkan organisasi file apa yang paling tepat untuk menyimpan data tersebut dagar file
penyimpanan tersebut memilikiperformansi akses paling baik!
1.3. Sebutkan dua keunggulan utama yang dapat diperoleh dalam memanfaatkan pendekatan
basis data sebagai jawaban atas kelemahan penggunaan pemrosesan file!
1.4. Sebutkan sifat-sifat dekomposisi yang baik!
2. Kelompok 2
Kasus : Sistem Informasi SDM
Suatu perusahaan memiliki sejumlah departermen. Setiap departemen memiliki
identitas departemen yang unik dan lokasi (nama gedung dan nomor lantai). Setiap departemen
dapat menempati lebih dari satu lokasi. Setiap departemen pasti memiliki pegawai (bisa lebih
dari satu). Setiap pegawai memiliki nomor induk yang unik, nama, alamat (terdiri dari nama
jalan, nomor, nama kota), serta gaji. Setiap pegawai pasti dan hanya tercatat di satu departemen
pada satu saat, yang diidentifikasi dengan tanggal mulai ditugaskan di suatu departemen.
Perusahaan tersebut memiliki sejumlah proyek. Setiap proyekmemiliki nomor identitas
yang unik, judul, nilai proyek, tanggal mulai, tanggal selesai, dan durasi. Setiap proyek pasti
dipimpin ileh seorang pegawai sebagai manager proyek , dan setiap proyek dapat memiliki
sejumlah pegawai sebagai anggota proyek. Manager dan anggota proyek ditugaskan secara utuh
sejak mulai hingga akhir masa proyek. Setiappegawai dapat memimpin atau menjadi anggota
beberapa tim proyek. Pegawai dapat dikategorikan pada salah satu kategori yaitu engineer atau
supporting staff. Engineer diidentifikasi keahlian dan level/gradenya. Sedangkan supporting
staff diidentifikasi masa kerjanya.
Soal :
2.1. Buatlah Entity-Relationship Diagram lengkap dari kasus diatas.
2.2. Buatlah konversi Entity-Relationship Diagram tersebut menjadi Relasional.
3. Kelompok 3
Diketahui Relasi R=(A,B,C,D,E) memiliki himpunan FDs F={A BC, B C, A B, AB
C, AC D}
Soal :
3.1. Tuliskan minimum cover bagi F.
3.2. Tentukan candidate keys dari relasi R.
3.3. Berada dalam bentuk normal berapakah relasi R?
4. Kelompok 4
Kasus : Sistem Informasi Pendidikan
Sebuah perpustakaan memiliki sejumlah buku dari berbagai jenis, misalnya text book biasa, text
book referensi, laporan TA/Tesis/Disertasi, jurnal, dll. Setiap judul buku dapat dikenali melalui

H a l a m a n | 84
informasi ISBNnya. Informasi lain tentang buku yang harus disimpan adalah judul, satu atau
lebih pengarang, penerbit, tahun penerbitan, abstraaksi, dan sejumlah kata kunci atau topic.
Perpustakaan dapat memiliki sejumlah eksemplar untuk setiap judul buku. Setiap eksemplar
buku dapat diidentifikasi berdasarkan kode eksemplarnya, yang bersifat unik untuk seluruh
koleksi buku di perpustakaan. Di samping itu, perlu dicatat pula statusnya, apakah merupakan
buku asli/fotokopi/digital.
Setiap peminjam dati perpustakaan tersebut harus terlebih dahulu mendaftar sebgai anggota,
dengan kategori staf, mahasiswa, karyawan, atau umum. Jumlah maksimum buku yang dapat
dipinjam bergantung kepada katergori anggota tersebut, sedangkan lama peminjaman untuk
setiap buku bergantung kepada jenis buku yang dipinjam. Selama masih memiliki buku yang
belum dikembalikan, anggota tidak diperbolehkan meminjam buku lainnya. Seorang anggota
dapat dikenali berdasarkan nomor anggotanya, sedangkan data pribadi lain yang harus disimpan
adalah nama, alamat, nomor telepon, dan alamat email.
Pada saat transaksi peminjaman buku, harus dicatat informasi peminjam, waktu peminjaman,
daftar eksemplar buku yang dipinjam, dan batas waktu pengembalian setiap buku. Di dalam
sebuah peminjaman tidak diperkenankan terdapat judul yang sama lebih dari 1 eksemplar. Pada
saat pengembalian akan dilakukan pencatatan tanggal pengembalian serta penghitungan denda
(jika ada). Besar denda per buku tergantung kepada statusnya: buku asli dikenai denda Rp.
1000,- perhari, fotokopi Rp. 500,- perhari, dan digital Rp.300,- per hari.
Informasi yang akan sering diperlukan adalah :
a. Pencarian data lengkap buku yang termasuk ke dalam topic tertentu
b. Mengetahui status ketersediaan dari sebuah judul buku
c. Mengetahui nama dan alamat email anggota yang memiliki piinjaman yang telah jatuh
tempo
Sejumlah asumsi yang dapat diturunkan adalah :
- Email anggota tidak ada yang sama
- Sebuah eksemplar buku hanya dapat dipinjam oleh satu orang anggota pada satu waktu
Soal :
4.1. Buatlah rancangan skema basis data yang sesuai untuk sistem informasi perpustakaan
tersebut. Jangan lupa menuliskan semua functional dependency yang terdefinisi pada basis
data tersebut. Gunakan penanaman relasi dan atribut yang menggambarkan informasi yang
terkandung di dalamnya (hint : anda saat ini harus berperan sebagai database engineer,
bukan software engineer pisahkan hal yang perlu diselesaikan di level basis data dengan
hal yang ditangani di level aplikasi).
Dengan memanfaatkan skema basis data yang tellah anda hasilkan pada soal a, tuliskan perintah SQL
untuk mendapatkan ketiga informasi yang akan sering diperlukan pada sistem informasi perpustakaan
ini.

H a l a m a n | 85
UAS Semester II 2010/20 11

UAS SEMESTER II 2010/2011


IF 2034 BASIS DATA
Jumat 20 Mei 2011
Waktu 100 menit
Anda diminta untuk membuat rancangan basis data bagi perusahaan X yang bergerak di bidang jual beli
barang. Sebagai dasar perancangan, Anda diberi contoh form yang biasa digunakan di perusahaan
tersebut:

Beberapa hal yang harus diperhatikan dalam pemodelan:


1. Nomor pelanggan bersifat unik untuk setiap pelanggan. Nomor pesanan bersifat unik untuk seluruh
pesanan. Nomor karyawan bersifat unik untuk setiap karyawan. Kode barang bersifat unik untuk
setiap item barang yang ditawarkan.
2. Alamat terdiri dari konponen nama jalan, kota, dan kode pos. Setiap pelanggan dapat memiliki
sejumlah alamat, dan tidak ada pelanggan dengan alamat yang sama. Setiap kali melakukan
pesanan, pelanggan harus menentukan alamat yang mana yang akan dijadikan alamat pengiriman.
3. Urutan kemunculan item pesanan di dalam sebuah pesanan harus sesuai dengan urutan pemasukan
data oleh pengguna. Untuk setiap pesanan, setiap item peanan harus memuat kode barang yang
tersedia.
4. Setiap pesanan dapat dikirimkan dalam sejumlah pengiriman. Namun setiap item pesanan harus
dikirimkan secara bersamaan.

H a l a m a n | 86
UAS Semester II 2013/20 14

SOAL UAS IF2034 : Basis Data


Senin, 13 Mei 2013, waktu : 90 menit
1. (bobot: 20) Diberikan skema basis data berikut ini:

Tuliskan perintah aljabar relasional dan perintah SQL untuk mendapatkan informasi berikut ini:
a. Daftar NIM, nama, dan nama program studi dari seluruh mahasiswa fakultas STEI.
b. Daftar NIM dan total SKS yang sudah diambil dari seluruh mahasiswa.
c. Daftar NIM dan nama mahasiswa program studi IF yang belum mengambil mata kuliah
IF2034.
2. (bobot: 20) Untuk kemudahan pemahaman, skema basis data pada soal no. 1 dapat dijadikan
Universal relation atau Flat relation sebagai berikut: UR = (KD_PRODI, NM_PRODI,
KD_FAKULTAS, NIM, NAMA, KD_KULIAH, NILAI, NM_KULIAH, SKS)
a. Sebagai skema relasi, apa keunggulan dan kelemahan skema relasi UR di atas?
b. Tuliskan semua perintah SQL untuk mendapatkan informasi pada soal no. 1, bagian a, b, dan
c dengan menggunakan skema relasi UR.
3. (bobot: 20) Terhadap relasi R = (A, B, C, D, E, H, I, J, K) terdefinisi sejumlah functional
dependencies F. F = {A H I, I K, C B, A C J, J C}
a. Tuliskan seluruh candidate keys dari R.
b. Tentukan R berada dalam bentuk normal berapa. Jika R belum berada dalam bentuk BCNF,
ubahlah agar menghasilkan relas-relasi dalam bentuk BCNF. Untuk setiap relasi, jangan lupa
mencantumkan candidate key dan functional dependencies yang terdefinisi. Tuliskan hal yang
harus menjadi perhatian dari rancangan akhir basis data yang dihasilkan, jika ada.
4. (bobot: 40) Sebuah perusahaan menyediakan layanan penyewaan lukisan kepada perorangan
maupun perusahaan. Anda diminta untuk merancang sebuah basis data untuk Sistem Penyewaan
Lukisan ini.
Sistem harus dapat mengelola data pelanggan dan lukisan, termasuk data pemiliknya.
Pelanggan dapat dikelompokkan ke dalam empat kelompok, yaitu pelanggan kategori B
(perunggu), S (perak), G (emas), dan P (platinum), yang terkait dengan besar potongan harga yang
diterima pada saat menyewa sebuah lukisan. Besar potongan harga untuk keempat kategori
tersebut adalah 0%, 5%, 10%, dan 15% berturut-turut mulai dari kategori perunggu. Pelanggan
sering kali mencari lukisan berdasarkan temanya, seperti lukisan binatang, pemandangan, lautan,
benda, dan lain-lain. Seorang pelanggan dapat menyewa lukisan yang sama lebih dari satu kali.
Lukisan yang disewakan merupakan milik pihak ketiga (bukan milik perusahaan penyewaan
lukisan). Harga sewa bulanan setiap lukisan ditentukan oleh masing-masing pemilik. Setiap
pemilik kemudian harus membayar 10% dari harga yang dibayarkan oleh penyewa kepada
perusahaan. Setiap lukisan yang tidak disewa selama enam bulan berturut-turut akan dikembalikan
kepada pemiliknya. Namun, setelah tiga bulan, lukisan tersebut dapat didaftarkan kembali untuk

H a l a m a n | 87
disewakan. Setiap lukisan hanya memiliki seorang pelukis, dan pelanggan sering pula mencari
lukisan berdasarkan nama pelukisnya.
Sistem harus dapat menghasilkan sejumlah laporan sebagai berikut:
i.

Untuk setiap pelanggan, sebuah laporan yang menampilkan daftar seluruh lukisan yang
pernah atau sedang disewa oleh pelanggan tersebut.
Heading laporan berisi nomor pelanggan, nama pelanggan, alamat pelanggan, lama
keanggotaan dan kelompok keanggotaan, serta deskripsi dan besar diskon untuk kelompok
tersebut.
Detil informasi lukisan yang pernah/sedang dipinjam dalam bentuk tabel dengan kolom
nomor, judul, dan tema lukisan serta tanggal mulai penyewaan, tanggal batas
pengembalian, dan tanggal lukisan dikembalikan (jika sudah dikembalikan).

ii.

Untuk setiap pelukis, sebuah laporan yang menampilkan daftar semua lukisan pelukis
tersebut yang dapat disewa oleh pelanggan.
Heading laporan berisi nomor, nama, kewarganegaraan, tahun kelahiran, dan tahun
kematian (jika sudah wafat) atau usia (jika belum wafat) dari pelukis.
Detil informasi lukisan karya pelukis tersebut dalam bentuk tabel dengan kolom nomor,
judul, dan tema lukisan serta nomor, nama, dan nomor telepon dari pemilik lukisan.

iii.

Untuk setiap pemilik, sebuah laporan yang memuat daftar lukisan yang pernah diserahkan
ke perusahaan untuk disewakan, berikut tanggal pengembalian ke pemilik jika sudah
dikembalikan ke pemiliknya.
Heading laporan berisi nomor, nama, dan alamat pemilik.
Detil informasi lukisan yang dimiliki dalam bentuk tabel dengan kolom nomor, judul
lukisan, serta tanggal lukisan dikembalikan ke pemiliknya (jika sudah dikembalikan).

Sejumlah asumsi yang berlaku adalah:


-

Semua atribut nomor merupakan atribut unik.


Untuk mempermudah komunikasi, sistem juga perlu mencatat alamat e-mail dari setiap
pelanggan dan pemilik lukisan. Tidak ada pelnanggan maupun pemilik lukisan yang memiliki
alamat e-mail yang sama

Buatlah:
a. Sebuah skema basis data relasional yang telah memenuhi kriteria bebas redundansi
berdasarkan functional dependencies antar atributnya.
b. Perintah-perintah SQL yang digunakan untuk mendapatkan data untuk membangun laporanlaporan yang sudah disebutkan di atas (maksimum 2 buah query untuk masing-masing
laporan).
Jelaskan proses aplikasi yang harus dilakukan (jika ada) terhadap data yang diperoleh dari
hasil query.
Perhatian: Anda adalah database designer, sehingga Anda harus dapat memisahkan spesifikasi
terkait dengan basis data dan spesifikasi yang terkait dengan proses aplikasi.

UAS Semester I 2015/2016

UJIAN AKHIR SEMESTER


PEMODELAN BASIS DATA IF2140
2015
Soal 1. Pemodelan Entity-Relational Model dan Transformasi ke Model Relasional (40%)
Themepark (taman bermain) Fantasia Universe memiliki sejumlah atraksi yang dibuka untuk
umum, misalnya: roller coaster besar bernama Thunderbird, roller coaster kecil bernama
The Snake, perahu ayunan bernama Shipwreck, petualangan mengarungi sungai buatan
bernama Riverrun, wahana petualangan di hutan bernama Jungle Adventure. Setiap atraksi
masuk ke suatu jenis kategori, yaitu thrill ride, family ride, dan water ride, misalnya
Thunderbird masuk ke kategori thrill ride, sedangkan Riverrun masuk kategori water ride.
Untuk setiap kategori atraksi, ada kelompok umur yang diperbolehkan untuk menggunakan
atraksi, demikian pula, dimungkinkan adanya batasan berat dan tinggi badan orang. Ada
kemungkinan kategori atraksi bertambah di kemudian hari. Tidak boleh ada kategori dengan
nama yang sama.
Untuk memudahkan identifikasi, setiap atraksi diberikan kode unik berupa 4 karakter
alfanumerik. Walaupun demikian, nama suatu atraksi juga unik (tidak boleh ada atraksi dengan
nama yang sama). Untuk setiap atraksi. Disimpan pula deskripsi atraksi, tanggal inagurasi, dan
luas area atraksi.
Themepark ini memiliki sejumlah karyawan untuk menjalankan operasinya. Untuk setiao
karyawan, disimpan NIK (Nomor Induk Karyawan, unik per karyawan), nama, jenis kelasmin,
alamat rumah, nomor telepon, dan alamat email. Setiap karyawan dapat memiliki 1 karyawan
lain sebagai direct supervisor (bisa juga tidak punya karena sudah merupakan karyawan pada
level supervision tertinggi). Ada tiga jenis karyawan, yaitu karyawan manajerial, karyawan
operasional, dan karyawan pendukung. Untuk setiap karyawan manajerial disimpan data
pendidikan terakhir dan deskripsi kualifikasi. Setiap karyawan operasional harus bekerja pada
suatu atraksi tertentu. Seorang karyawan operasional bisa bekerja pada satu atraksi atau lebih.
Suatu atraksi biasanya memiliki beberapa karyawan operasional yang di-assign padanya, tapi
bisa juga tidak punya karyawan sama sekali, misalnya atraksi baru yang belum dioperasikan.
Untuk setiap karyawan pendukung harus disimpan keahlian apa (1 karyawan pendukung bisa
punya n keahlian), misalnya tenaga kebersihan, keamanan, maintenance gedung, teknis mesin,
dll. Seorang karyawan bisa menjadi karyawan manajerial, operasional, dan pendukung, pada
saat yang sama ada juga karyawan lain yang tidak masuk 3 kategori tersebut, misalnya
karyawan yang baru magang.
Sebuah atraksi harus mendapatkan perawatan/maintenance secara berkala yang
didokumentasikan. Setiap kegiatan perawatan didokumentasikan dalam kode bersifat unik
untuk setiap atraksi (setiap kegiatan perawatan diidentifikasi unik berdasarkan kode atraksi
dan suatu nomor urut). Untuk setiap kegiatan perawatan, dicatat tanggal perawatan, durasi
(dalam hari), biaya total, deskripsi, dan karyawan pendukung yang bertanggung jawab pada
kegiatan perawatan yang bersangkutan. Untuk sebuah kegiatan perawatan, minimum ada 1
karyawan pendukung dan bisa lebih. Untuk setiap karyawan dalam suatu kegiatan perawatan,

H a l a m a n | 89

harus diketahui tugasnya apa. Themepark memiliki daftar tugas perawatan atraksi yang sudah
tetap yang diberi kode (unik), deskripsi, dan deskripsi sumber daya yang dibutuhkan. 1
karyawan bisa memiliki lebih dari 1 tugas dalam suatu kegiatan perawatan.
a. Buatlah model entity-relationship (model ER) dalam bentuk diagram ER untuk
memodelkan data pada themepark di atas selengkap-lengkapnya. Gunakan nama-nama
yang jelas sesuai yang tertera dalam deskripsi tersebut. Jika ada aspek yang tidak dapat
ditangkap dengan model ER, tambahkan sebagai keterangan. Buat asumsi sendiri untuk
hal-hal yang tidak disebutkan secara jelas dalam deskripsi di atas dan tuliskan asumsiasumsi tersebut.
b. Transformaslkan model ER yang Anda buat ke dalam model relasional selengkaplengkapnya. Daftarkan pula foreign key reference yang ada. Jika ada aspek dalam diagram
ER yang tidak dapat dipindahkan ke model relasional, tuliskan sebagai keterangan dan
jelaskan bagaimana implementasinya Lihat soal 2 untuk contoh penulisan relasi dan
foreign key references.
Soal 2. SQL (20%)
Diketahui skema basis data relasional di sebuah klinik sebagai berikut:
Pasien = (IDPasien, Nama, Alamat, Kota, NoTelp, TanggalLahir)
Dokter = (lDDokter, Nama, Alamat, Kota, NoTelp, Spesialisasi, NolzinPraktek)
Pemeriksaan = (IDPasien, lDDokter TanggalPeriksa, Diagnosis, Biaya, Keterangan)
Foreign key references:
Pemeriksaan (lDPasien) Pasien (IDPasien)
Pemeriksaan (lDDokter) Dokter (IDDokter)
Keterangan:
- Atribut relasi yang digaris bawah merupakan primary key dari relasi.
- Foreign key reference A(A1) B(B1), artinya: atribut A1 dari relasi A merupakan
foreign key reference ke atribut B1 dari relasi B.
Tuliskan ekspresi SQL untuk beberapa query berikut:
a. Menampilkan IDPasien, Nama, NoTelp semua pasien yang tinggal di kota Bandung dan
lahir di tahun 1988.
b. Menampilkan daftar kota (unik) yang ditinggali pasien dan juga dokter.
c. Menampilkan detil pemeriksaan untuk dokter dengan ID = D213123l' untuk pemeriksaan
pada tahun 2014. Atribut yang ditampilkan adalah: lDDokter, Nama [Dokter], NoTelp
[Dokter], TanggalPeriksa, lDPasien, Nama [Pasien], Diagnosis, Biaya.
d. Menampilkan total biaya pemeriksaan per lDPasien untuk pemeriksaan pada tahun 2000
dan setelahnya
e. Mengubah biaya pemeriksaan untuk semua pasien yang diperiksa pada tahun 2015 dan
yang diperiksa oleh dokter dengan TDDokter = D2131231', dengan biaya pemeriksaan
dikurangi l0% dari biaya yang sebelumnya (jika biayanya tidak NULL).

H a l a m a n | 90

Soal 3. Normalisasi (20%)


Sebuah universitas memiliki beberapa pusat penelitian (PP), seperti Pusat Penelitian Teknologi
Informasi dan Komunikasi, Pusat Penelitian Energi Terbarukan, Pusat Penelitian Pangan, dsb.
Untuk suatu periode tertentu, seorang pegawai ditunjuk untuk mengepalai PP. Berikut adalah
contoh data PP, kepalanya, dan laboratorium di akui oleh PP tersebut:
Nama PP

Laboratorium PP NIP
Nama
Tanggal
Kepala PP Kepala PP Lahir
Kepala PP

TMT
Kepala
PP

Komputasi, N123456
Pusat
Penelitian Lab.
Lab Telematika
Teknologi
Informasi
dan
Komunikasi
P456788

Suharto

1965-1212

201002-01

Ahmad
Bambang

1970-0302

201101-02

N123456

Suharto

1965-1212

201203-03

Diana
Nasution

1960-0409

201002-01

D348934

Deddy
Kurniadi

1966-1005

201102-01

P456788

Ahmad
Bambang

1970-0302

201302-02

Pusat Penelitian Lab.


Komputasi, X5678892
Lab.
Teknologi
Pangan
Pangan

Setiap PP memiliki nama yang unik (Nama PP). Setiap PP dapat menggunakan 1 laboratorium
atau lebih (Laboratorium PP). Nama sebuah laboratorium unik. Dengan demikian, 1
laboratorium bisa melayani lebih dari l PP. Setiap Kepala PP memiliki Nomor Induk Pegawai
(NIP Kepala PP, unik untuk setiap pegawai), Nama (Nama Kepala PP), dan Tanggal Lahir
(Tanggal Lahir Kepala PP).
Setiap kepala PP ditugaskan ke suatu PP terhitung mulai tanggal tertentu (TMT Kepala PP).
Pada suatu TMT, untuk suatu PP hanya ada tepat satu kepala PP. Seorang pegawai bisa menjadi
kepala PP pada suatu PP yang sama pada TMT yang berbeda dan dapat menjadi kepala PP dari
PP yang berbeda, namun hanya 1 PP pada satu TMT.
Diketahui relasi PP = (NPP, LBP, NIP, NMK, TLK, TMT) mewakili persoalan tersebut dengan
atribut sebagai berikut:
NPP : Nama PP
LBP : Laboratorium yang dipakai PP NIP : NIP Kepala PP

H a l a m a n | 91

NMK : Nama Kepala PP


TLK : Tanggal lahir Kepala PP
TMT : Tanggal mulai seorang Kepala PP di-assign di suatu PP tertentu
Asumsikan semua nilai sel dalam relasi sudah atomik sehingga PP minimum dalam bentuk
INF.
a.

b.
c.
d.

Tuliskan semua functional dependencies yang terdefinisi dalam persoalan di atas. Pastikan
functional dependency yang minimal yang ditulis (setidaknya functional dependency yang
bersifat parsial dan transitif tidak dituliskan berulang).
Tentukan apa primary key dari relasi PP dan jelaskan alasannya.
Tentukan bentuk normal ke berapakah relasi PP tersebut dan jelaskan alasannya.
Ubahlah relasi PP menjadi skema yang terbaik sesuai dengan tujuan perancangan basis
data. Jelaskan prosesnya (tidak hanya skema finalnya). Untuk standar penulisan relasi dan
foreign key references, gunakan cara penulisan seperti pada soal 2.

Soal 4. Storage dan Performance Tuning (20%)


a.
b.
c.

Jelaskan bagaimana mekanisme transfer data dari disk dengan main memory.
Apa kelebihan dan kekurangan pemanfaatan indeks dalam pengelolaan basis data?
Diketahui skema basisdata sebagai berikut:
Customer = (custID, custname)
Transaction = (transID, custID, transdate)
ItemSale = (transID, itemID, quantity, totalprice)
Item = (itemID, itemname, categoryID, categoryname, itemprice)
Category = (categoryID, categoryname, group)
Foreign key references :
Transaction (custID) Customer (custID)
ItemSale (transID) Transaction (transID)
ItemSale (itemID) Item (itemlD)
Item (categoryID) Category (categoryID)
Keterangan:
- Relasi Item: categoryname = categoryname pada relasi Category untuk categoryID
yang sama.
- Relasi ItemSale: totalprice tiap transID untuk suatu itemlD tertentu = quantity *
itemprice (diambil dari kolom itemprice pada tabel Item untuk itemlD yang berkaitan)
Sebutkan 1 contoh saja (relasi dan atribut yang mana) dari bagian skema di atas yang
menyebabkan skema ini denormalized atau mengandung atribut turunan. Selanjutnya,
berdasarkan contoh tersebut, jelaskan pada kondisi/operasi seperti apa skema ini akan
menguntungkan, dan jelaskan bagaimana mekanisme untuk menjaga konsistensi data,
khususnya saat terjadi operasi insert, update, delete.

Anda mungkin juga menyukai