Professional Documents
Culture Documents
Bundel Soal STI Semester 3 2016-2017 PDF
Bundel Soal STI Semester 3 2016-2017 PDF
Bundel Soal STI Semester 3 2016-2017 PDF
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
1. Dari data mahasiswa Komputer satu angkatan, 191 orang, didapat data yang mengambil tiga
matakuliah Struktur Diskrit, OOP, dan Etika sebagai berikut:
-
OOP, 76 orang.
Etika, 63 orang.
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
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
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
1. Dari data mahasiswa Komputer satu angkatan, 191 orang, didapat data yang mengambil tiga
matakuliah Struktur Diskrit, OOP, dan Etika sebagai berikut:
-
OOP, 76 orang.
Etika, 63 orang.
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
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
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
b. Rangkaian :
Gambarkan tree-nya
H a l a m a n | 14
UAS Semester I 2010/20 11
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.
H a l a m a n | 15
UAS Semester I 2011/20 12
H a l a m a n | 16
UAS Semester I 2015/20 16
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!
II2111
Probabilitas dan
Statistika
H a l a m a n | 19
UTS Semester I 2008/ 2009
H a l a m a n | 20
UTS Semester I 2009/ 2010
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
H a l a m a n | 22
UTS Semester I 2011/ 2012
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
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
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
EL2142
Sistem Digital dan
Mikroprosesor
H a l a m a n | 27
UTS Semester I 2006/ 2007
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
H a l a m a n | 28
UTS Semester I 2007/ 2008
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:
H a l a m a n | 30
UTS 1 Semester I 2009/ 2010
b.
f (a, x, z ) x( x z) a az
f ( x, y, z) xz yz xy z
b.
f (a, b, c) m(1,5,6,7)
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
+
-
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
Jelaskan :
a. Sistem analog
b. Sistem digital
c. Keunggulan sistem digital
d. Kelemahan / keterbatasan sistem digital
(waktu 10 menit bobot nilai 10%)
2.
3.
Buktikan bahwa fungsi f pada rangkaian (a) ekuivalen dengan fungsi g pada rangkaian
(b)!
(a)
(b)
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.
H a l a m a n | 35
UAS Semester I 2006/20 07
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
Buatlah K-Map untuk rangkaian pembentuk Next State dan tentukan persamaan Next Statenya.
j.
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
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
Buatlah K-Map untuk rangkaian pembentuk Next State dan tentukan persamaan Next Statenya.
j.
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.
H a l a m a n | 42
UAS Semester I 2011/20 12
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
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
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.
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;
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
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;
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:
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.
Doorlock, yang jika nialinya 1 mengkibatkan pintu 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
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
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}
H a l a m a n | 58
UTS Semester I 2010/ 2011
H a l a m a n | 59
UTS Semester I 2011/ 2012
H a l a m a n | 60
UAS Semester I 2009/20 10
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
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
H a l a m a n | 63
UAS Semester I 2010/20 11
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
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
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%.
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
H a l a m a n | 69
Kamis, 23 Oktober 2008
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
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
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
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
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%
H a l a m a n | 78
UTS Semester I 2015/ 2016
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
H a l a m a n | 81
UAS Semester I 2007/20 08
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
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
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
H a l a m a n | 86
UAS Semester II 2013/20 14
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).
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.
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
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
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
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.
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.