Rabu, 07 Maret 2012

soal latihan agama

Soal Latihan1

1. Kita mengenal agama prodak samawi dan ardhi, maksudnya:

a. >Agama Langit dan Bumi

b. Agama Matahari dan Bumi

c. Agama Bulan dan Bumi

d. Agama Langit dan Matahari

e. Agama Nenek moyang

2. Pada dasarnya Agama Islam, Nasrani dan Yahudi termasuk katagori Agama:

a. Ardhi d.Dinamisme

>b. Samawi e.Animisme

c. Majusi
3. Ahuramazda(cahaya) dan Ahriman(kegelapan) adalah konsep agama:

a.Nenek Moyang d. Nasrani
b.Yahudi >e. Majusi
c. Konghucu
4. Monotheisme,disebarkan oleh rasul, kitab suci,
ajarannya tetap dan kebenarannya universal adalah
ciri-ciri agama:
a. Nasrani >d.Samawi
b. Yahudi e. Ardhi
c. Majusi
5. Agama Islam adalah agama yang diridhoi Allah,
terdapat pada surat:
>a. Al-Maidah ayat 3 d. Al-maidah ayat 13
b. Al-Maidah ayat 5 e. Al-Maidah ayat 31
c. Al Maidah ayat 8



SOAL LATIHAN2

1. Dari lauhil Mahfuz ke baitil izzah lalu ke bumi secara berangsur-angsur adalah:

a. >Cara diturunkannya Al-quran

b. Mukjizat Al-quran

c. Sejarah Al-quran

d. Ilmu Al-quran

e. Turunnya AL Qur’an

2.Umar bin khottob adalah sahabat yang pertama mengusulkan kodifikasi Al-quran, hal terjadi pada masa:

a.Umar bin khotob >d. Abu bakar as-siddiq

b. Ali bin Abithalib e. Rasulullah

c. Usman bin Affan

3. Al-quran terkodifikasi (terbukukan) secara baku, pada masa:

a. Rasulullah >d. Usman bin Affan

b. Abu bakar e. Ali bin Abithalib

c. Umar bin khottob

4. Wahyu yang terasa berat dirasakan oleh Rasul dalam keadaan:

a. Mimpi yang hakiki

>b.Seperti gemerincing lonceng

c. Malaikat dalam bentuk aslinya

d. Malaikat dalam bentuk laki-laki

e. Nabi Langsung bertemu dengan Allah


5. Setiap huruf diganjar satu kebaikan dan setiap kebaikan berlipat sepuluh, adalah:

>a. Pahala membaca al-quran d. mukjizat al-quran

b. sejarah al-quran e. keutamaan al-quran

c. Keistimewaan Al Qur’an


SOAL LATIHAN3

1. Dua perkara yang menjadi pegangan hidup menurut rasulullah, adalah:

a. >Al-quran dan Al-Hadist

b. Al-quran

c. Al-Hadist

d. Al-quran, Al-hadist dan Ijma’

e. Ijma’ dan Qias

2. Catatan tentang segala ucapan, perbuatan dan ketetapan rasulullah, adalah definisi:

a. Ijma’ d. Hadist

b. Quran e. Khabar

>c. Qias
3. Sholat, wudhu dan pelaksanaan haji, adalah bayan:
a. Ta’yin d. Nasikh
>b. Takhsis e. Tafsil
c. Taqrir
4. Tuntunan dimana isi berasal dari Allah dan redaksinya
berasal dari Rasulullah adalah:
>a. Hadist Qudsi d.. Al-quran
b. Hadist Nabawi e. Ijma’
c. Qias


5. Hadist yang disandarkan langsung kepada Rasulullah, disebut hadist:

a. Maudhu’ d. Maqthu’

b. Mauquf >e. Marfu’

c. Shahih


SOAL LATIHAN4

1. Imam mujtahid (mazhab) yang terkemuka, adalah:

a. >4 Imam d. 3 Imam

b. 5 Imam e. 6 Imam

c. 7 Imam


2. Imam Syafii’ adalah murid dari imam:

a. Imam Hambali >d. Imam Maliki

b. Imam Hanafi e. Imam ja’far

c. Imam Ghozali

3. Imam Ahmad bin Hambal adalah murid dari imam:
a. Imam Hanafi d. Imam Ghozali
b. Imam Maliki e. Imam Ja’far
>c. Imam Syafii’
4. Mazhab Syafii’ lebih banyak pengikutnya di negara:
a. Iran d. Makkah
b. Turki >e. Indonesia


5. Ar-risalah dan Al-um adalah karya Imam:

>a. Syafii’ d. Maliki

b. Hanafi e. Hambali

c. Ghazali




Soal Latihan5

1. Aqidah, syari’ah dan akhlak adalah merupakan:

a. >Ciri-ciri Ekonomi Islam

b. Prinsip Ekonomi Islam

c.Dasar-dasar Ekonomi Islam

d. Macam-macam Ekonomi Islam

e. Pengertian Ekonomi Islam

2. Menurut Muh.Syafii antonio riba terbagi kepada:

a. 3 macam d. 6 macam

b. 4 macam >e. 5 macam

c. 7 Macam

3. Menukarkan dua barang yang sejenis dengan tidak
sama ukurannya, adalah jenis riba:
a. Qordli d. Fadli
>b. Yad e. Nasa’
c. Jahiliyyah
4. Larangan Riba tertuang dalam surat:
>a. Al-baqorah ayat 275 d. Al-baqorah ayat 271
b. Al-baqorah ayat 272 e. Al-baqorah ayat 257
c. Al Baqaroh Ayat 273
5. Ekonomi dalam Islam harus berorientasi:
a. Dunia d. Akhirat
>b. Dunia dan Akhirat e. Liberal

c. Sekuler


6. Pada masa klasik Irak dan Syiria dikuasai klalifah:

>a. Abu bakar d. Usman

b. Umar e. Ali

c. Muawiyah

7. Pada masa klasik Palestina dikuasai klalifah:
a. Abu bakar >d. Usman
b. Umar e. Ali
c. Muawiyah
8. Menurut Harun Nasution, sejarah intelektual Islam
terbagi kepada:
>a. 3 bagian d. 5 bagian
b. 4 bagian e. 2 bagian
c. 6 bagian
9. Masa klasik dimulai tahun:

>a. 650-1250 d.1800-1900
b. 1250-1800 e. 1900-sampai sekarang.

c 450 – 650


10 Pada masa pertengan terdapat …. Kerajaan besar:

a. 5(lima) >.3 (tiga)
b. 4 (empat) e. 6 (enam)







Soal Latihan6

1. Hukum-hukum ibadah dan mua’malah adalah kajian hukum:

a. Barat d. Timur Tengah

>b. Islam e. Asia

c. Perdata dan Pidana

2. UU RI nomor 38 tahun 1999 mengatur tentang:

>a. Zakat d. Wakaf

b. Perkawinan e. Haji

c. Hukum

3. Politik yang mengatur hubungan antara negara islam
dengan negara islam yang lainnya atau negara sekuler
lainnya disebut:
a. Dusturiyah d. Maliyah
>b. Dauliyah e. Politik
c. Duta

4. Nilai negara dan pemerintahan dalam islam adalah intrumental dan bukan tujuan itu sendiri, adalah pendapat:

a. K.H Abdurrahman Wahid d. Hidayat Nur Wahid

b. Amin Rais >e. Nurkholis Majid

c. Fazlurrahman

5. UU RI nomor 17 mengatur tentang:
a. Zakat d. Wakaf
b. Perkawinan e. Peradilan agama
>c. Ibadah Haji

soal latihan logika algoritma

SOAL LATIHAN UAS LOGIKA DAN ALGORITMA
SOAL LATIHAN UAS LOGIKA DAN ALGORITMA
Berikut adalah soal latihan untuk menghadapi uas logika dan algoritma,kalo ada yang salah koreksi sendiri yap....hehehe goodluck

1. Usaha mengurutkan kumpulan data dalam array disebut ? = Sorting
2. Usaha Pencarian data dalam kumpulan data disebut ? = Searching
3. Pencarian data dengan meneliti data satu per satu dari awal ? = Linear Search
4. Teknik Sort yang bekerja dengan teknik gelembung disebut ? = Bubble Sort
5. Proses pencarian data pada data urut lebih efektif jika menggunakan teknik search ? = Binary Search
6. Himpunan yang disusun secara menaik / increasing akan mengalami keaadaan time complexity yang disebu ? = Best Case
7. Himpunan yang disusun secara acak akan mengalami keadaan time complexity yang disebut ? = Average Case
8. Himpunan yang disusun secara menurun / decreasing akan mengalami keadaan time complexity yang disebut ? = Worst Case
9. Pembagian waktu pada average case / data tak tersusun disebut ? = 3n/2-1
10. Metode yang biasa digunakan untuk melakukan sorting yaitu ? = Selection Sort, Quick Sort, Merge Sort, Bubble Sort
11. Kriteria Array dua dimensi yaitu ? = memiliki baris dan kolom
12. Teknik yang sering digunakan dalam metode search ? = Linear Search dan Binary Search
13. Knapshack Problem dapat diselesaikan dengan cara ?
= Matematika
= Kriteria Greedy
= Algoritma Pemrograman Greedy
14. Arti dari suatu simpul yang tidak dihubungkan dengan suatu ruas apapun dalam menentukan suatu pola lalu lintas dengan jumlah fase minimal adalah ? = Simpul tersebut selalu berlaku lampu hijau.
15. Dalam masalah pewarnaan warna yang dipergunakan sebaiknya ? = Seminimal mungkin
16. Graph yang dihasilkan dalam masalah traveling salesman adalah ? = Graph Tertutup
17. Fungsi Utama / tujuan dalam masalah knapshack adalah ? = Maximum pixi
18. Problem pemberian warna pada semua simpul sehingga 2 simpul yang berdampingan (ada ruas yang menghubungkan kedua simpul tersebut) mempunyai warna yang berbeda disebut ? = Coloring
19. Apa yang disebut dengan Quick Sort ? = yaitu Sorting dengan iterasi secara terurut dari posisi element 1 ke element 2 dan seterusnya
20. Apa yang disebut dengan Bubble Sort ? = yaitu Teknik Sort yang bekerja dengan menggunakan prinsip gelembung udara yang akan bergerak naik keatas secara satu persatu
21. Apa yang dimaksud dengan Selection Sort ? = Tenik sort dengan cara pemilihan element atau proses kerja dengan memilih element data terkecil untuk kemudian dibandingkan dan ditukarkan dengan element pada data awal dan seterusnya sampai dengan seluruh element sehingga akan menghasilkan pola data yang telah disort
22. Pemberian warna yang sama pada coloring terjadi apabila ? = Simpul tidak berdampingan
23. Pemberian warna yang tidak sama pada coloring terjadi apabila ? = Simpul berdampingan
24. Permasalahan bagaimana mengoptimalisasi storage / memory dalam computer agar data yang disimpan dapat termuat dengan optimal disebut ? = Optimal storage on tapes problem
25. Algoritma yang digunakan untuk mencari ruas terpendek yang menghubungkan setiap simpul dalam graph adalah ? = Shortest Path Problem
26. ALgoritma untuk mencari waktu tempuh perjalanan terpendek dan kembali ke simpul awa adalah ? = Traveling Sallesman
27. Kriteria Knapshack Problem adalah ?
= minimum weight (berat terkecil) = wi
= maximum profit (profit terbesar) = pi
= maximal profit/weight = pi/wi
28. Ciri – cirri graph minimum spanning tree adalah ?
a. Setiap ruas graph tidak saling berhubungan
b. Setiap ruas memiliki nilai
c. Setiap ruas tidak memiliki arah
29. Pencarian max dan min akan mendapatkan best case jika data yang diurutkan ? = secara increasing / urut menaik
30. Dalam pencarian binary (bagi dua) dengan data terurut ascending ,algoritma yang benar adalah ?
= jika x= jika x>a[mid] maka low = mid+1
= jika a[mid]31. Fungsi tujuan Knapshack Problem adalah ? = untuk mendapatkan solusi yang optimal dengan mencari profit yang maximal
32. Greedy By Densitas adalah ? = Pilih barang dengan perbandingan nilai dan berat yaitu pi/wi terbesar
33. Salah satu contoh penerapan coloring graph adalah ? = menentukan pola lalu lintas dengan fase minimal
34. Teknik pencarian yang hanya bisa melakukan proses pencarian apabila datanya urut adalah ? = Binary Search
35. Jumlah perbandingan yang dilakukan untuk worst case adalah ? = 2(n-1)
36. Hal yang mempengaruhi kecepatan algoritma sort adalah ? = jumlah operasi
37. Nilai middle adalah ? = (low + high)div2
38. Graph yang dihasilkan minimum spanning tree adalah ? = graph tertutup
39. Diket Data : 2 22 10 15 3 8
Jika menggunakan Bubble sort maka iterasi ke 2 keadaan data menjadi ?
= 2 3 22 10 15 8
40. Diket data : 5 3 4 2 1
Jika menggunakan insertion sort maka iterasi ke 3 adalah ?

= 3 4 5 2 1


PERTEMUAN 9

Soal Logika dan Algoritma Semester I B
1. Kumpulan elemen-elemen yang terurut dan memiliki tipe data yang sama disebut :
a. Rekursif >c.Array e. Direktori
b. Record d. File

2. int nilai [6];
Variabel nilai dalam statment diatas merupakan :
a. Tipe data c. Jumlah baris e. Jesnis Data
>b. Nama Array d. Jenis Array

3. Sebuah matriks dideklarasikan sebagai berikut:
int nilai [3][4];
Jumlah elemen dari matriks tersebut adalah:
a. 7 c. 3 e. 8
b. 4 >d. 12


4. Pada array dua dimensi dengan ordo 4 x 4, dengan kondisi A[i,j]=1, jika i<=j, A[i,j]=j, jika i>j dari pernyataan diatas nilai dari A[3,2] adalah :
a. 1 > c. 3 e. 6
b.2 d. 4

5. Dibawah ini merupakan hal-hal yang harus dikemukakan dalam mendeklarasikan suatu bentuk array, kecuali :
>a. Tipe array c. Ukuaran Array e. Ukuran Data
b. Tipe Data d. Nama Array

6. Tehnik dalam memilih dan menyeleksi sebuah elemen dari beberapa elemen yang ada disebut :
> a. Searching c. Devide
b. Sorting d. Conquer

7. Algoritma pencarian elemen Maximal dan Miumimal dengan Linier / Squential Search disebut :
>a. Strait MaxMin c. D and C
b. Binary Search d. Knapsack

8. Bila Terdapat deret data atau angka sebanyak 950 buah dan kita akan melakukan pencarian data pada deret tersebut dengan teknik linier search, maka akan membutuhkan waktu maksimal :
a. 400 kali c. 470 kali
>b. 95 kali d. 950 kali

9. Pencarian data dengan meneliti data satu persatu dari posisi awal dikenal dengan istilah :
a. Binary Searching >c. Sequential Searching
b. Randon Searching d. Binari Searching

10. Teknik yang digunakan untuk mencari suatu data pada himpunan data yang tersusun secara urut dengan cara membagi urutan himpunan menjadi 2 bagian adalah :
a. Sequential Search >c. Binary Search
b. Fibonacci Search d. D and C Search

11. Hal yang mempengaruhi kecepatan algoritma sort adalah :
>a. Jumlah operasi perbandingan dan jumlah operasi pemindahan data.
b. Jumlah operasi pembagian dan jumlah operasi pemindahan data.
c. Jumlah operasi perhitungan.
d. Jumlah operator

12. Teknik Devide dan Conquer digunakan dalam memecahkan masalah antara lain :
a. Array c. Matrix
b. MaxMin >d. Sorting dan Searching

13. Membagi n input menjadi k subset input yang berbeda (1 >a. D and C c. Sorting
b. Searching d. Rekursif

14. Usaha untuk mengurutkan kumpulan-kumpulan data dalam suatu array disebut :
a. Searching c. Devide
>b. Sorting d. Conquer

15. Berikut ini adalah metode yang digunakan pada teknik sorting , kecuali :
a. Bubble >c. Fibonacci
b. Heap d. Insertion

16. Metode Greedy dapat digunakan untuk menyelesaikan masalah dibawah ini, kucuali :
a. Knapsack Problem >c. Faktorial
b. Shortest Path Problem d. Minimum Spanning Tree

17. Permasalahan bagaimana mengoptimalisasi storage / memory dalam computer agar data yang disimpan dapat termuat dengan optimal merupakan permasalahan dari :
a. Knapsack Problem c. Minimum Spanning Tree
b. Sortes Path Problem >d. Optimal On Tape Storage

18. Misal terdapat 3 buah program (n=5) yang masing-masing mempunyai panjang program (l1, l2,l3,l4,l5)=(15,8,10,23,9). Tentukan urutan penyimpanannya :
a. l4,l1,l3,l5,l2 c. l2,l4,l3,l1,l5
>b. l2,l5,l3,l1,l4 d. l4,l1,l2,l5,l1

19. Penyelesaian knapsack dengan konsep dibawah ini, kecuali :
a. Pilih objek dengan nilai Pi maximal c. Pilih objek dengan PiWi maximal
b. Pilih objek dengan berat Wi minimal >d. Pilioh objek dengan berat Wi maximal

20. Dalam kasus menentukan objek yang akan dimuat dalam suatu kantong masing-masing obejek dari n objek tersebut harus mempunyai :
>a. Berat dan Profit c. Profit dan Panjang
b. Berat dan Panjang d. Panjang dan LebarMenghitung.

21. Menghitung jarak satu persatu sesuai dengan arah dan graph yang ditunjuk oleh tiap-tiap ruas / edge dan dilakukan terhadap ruas dari graph yang memiliki jalur awal dan jalur akhir adalah proses untuk mendapatkan solusi optimal dari permasalahan :
a. Knapsack c. Knapsack Problem
b. Shortest Path Problem >d. Minimum Spanning Tree

22. Short Path Problem digunakan untuk mencari :
a. Terpanjang c. Terlama
>b. Terpendek d. T erdepan

23. Penyelesaian kasus knapsack problem, yang paling optimal efektif dan efisien adalah dengan cara :
a. Matematika c. Kriteria Greedy
>b. Algoritma Greedy d. Pemrograman Greedy

24. Graph yang nantinya dihasilkan dalam masalah TRAVELINGSALESMAN adalah :
a. Graph Terbuka c. Graph semi ter tutup
b. Graph Sederhana >d. Graph Tertutup

25. Fungsi utama / tujuan dari masalah Knapsack adalah :
>a. Maksimum ∑PiXi c. Minimum ∑PiWi
b. Maksimum ∑PiWi d. Minimum ∑PiWi

26. Arti dari simpul yang tidak dihubungkan dengan suatu ruas apapun dalam menentukan pola lalu lintas dengan jumlah fase minimal adalah :
a. Simpul tersebut selalu berlaku lampu merah
b. Simpul tersebut selalu berlaku lampu merah/hijau
c. Simpul tersebut selalu berlaku lampu kuning
>d. Simpul tersebut selalu berlaku lampu hijau
e. Simpul tersebut selalu berlaku lampu hijau / kuning

27. Dalam masalah pewarnaan, banyaknya warna yang dipergunakan sebaiknya :
>a. Seminimal mungkin c. Semaksimal mungkin e. Tidak ada
b. Seoptimal mungkin d. Tidak ditentukan

28. Dalam masalah pewarnaan, warna yang sama akan diberikan bila :
> a. Simpul tidak berdampingan c. Simpul tidak terhubung oleh ruas e. Simpul tidak beruas
b. Simpul berdampingan d. Simpul terhubung oleh ruas

29. Dalam masalah pewarnaan, warna yang berbeda akan diberikan bila :
a. Simpul tidak berdampingan c. Simpul tidak terhubung oleh ruas e. Simpul tidak beruas
> b. Simpul berdampingan d. Simpul terhubung oleh ruas

30. Untuk menentukan pola lalulintas dengan jumlah Fase Minimal merupakan contoh kasus dari problem :
a. Minimum Spanning Tree .>c. Colloring
b. Sort Path Problem d. Traveling Salesman

sola dan latihan logika algoritma 2
08:56 | Diposkan oleh homeland321 | | Edit Entri
1. Sebuah prosedur langkah demi langkah yang pasti untuk menyelesaikan sebuah masalah disebut:
a. Proses
b. Program
c. Prosesor
*d. Algoritma
e. Logika

2. Suatu prosedure yang hanya akan berhenti jika mempunyai atau menghasilkan solusi sedangkan tidak menghasilkan solusi maka prosedur tersebut akan berjalan tanpa henti disebut:
a. Programming language
b. Algoritma
*c. Semi algoritma
d. Procedure
e. function

3. Diberikan P=6, Q=7, R=8 dan diberikan instruksi P=Q;Q=R maka nilai P, Q dan R saat ini adalah
a. 6,7,8
b. 7,8,6
c. 8,6,7
d. 7,8,7
*e. 7,8,8

4. Struktur percabangan yang tidak menggunakan syarat menggunakan perintah
*a. goto
b. if…then
c. select…case
d.while
e. if …then…else

5. Rekursif adalah
a. suatu prosedur yang dipanggil
b. suatu proses yang memanggil prosedur lainnya
*c. suatu proses yang bisa memanggil dirinya sendiri.
d. Suatu prosedur looping.
e. suatu prosedur yang dipanggil dari prosedur lainnya.

6. Penjadwalan kuliah dapat diselesaikan dengan cara
*a. colouring
b. minimum spanning tree
c. knapsack problem
d.short path problem
e. travelling salesman

7. Algoritma yang digunakan untuk mencari ruas terpendek untuk menghubungkan setiap simpul dalam graph?
a. coloring
b. minimum spanning tree
c. Travelling salesman
*d. short path problem
e. knapsack problem

8. Algoritma untuk mencari waktu tempuh perjalanan terpendek dan kembali ke simpul awal:
*a. Travelling sallesman
b. minimum spanning tree
c. knapsack problem
d. short path problem
e. colouring

9. ciri-ciri graph dalam minimum spanning tree, kecuali
*a. graph tidak boleh tertutup
b. graph boleh tertutup
c. setiap ruas graph memiliki nilai
d. setiap ruas pada graph tidak memiliki arah.
e. setiap simpul terhubung oleh ruas

10. Perhatikan gambar berikut, berapakah jarak/ruas paling minimum untuk menghubungkan semua simpul pada graph. (gunakan minimum spanning tree)
a. 26


*b. 23
c. 30
d. 18
e. 24






11. Berikut ini kriteria Knapsack problem adalah
*a. minimum weight
b. maximum weight
c. minimum profit
d. minimum profit/weight
e. zero profit

12. Pencarian max dan min akan mendapatkan best case jika data yang di urutkan.
*a. urut naik
b. urut turun
c. data acak
d. data urut naik dan turun
e. data diawal harus lebih besar dari data terakhir


13. Dalam pencarian biner (bagi dua) dengan data terurut ascending. Berikut ini algoritma yang benar, kecuali :
a. jika X < A[mid] maka high = mid-1 b. jika X > A[mid] maka low = mid+1
*c. jika X > A[mid] maka high = mid+1
d. jika A[mid] < X ,maka low = mid+1 e. jika X > A[high] maka pencarian gagal

14. Diketahui data: 2 22 10 15 3 8
jika dikerjakan dengan Bubble Sort, maka iterasi ke 2 keadaan data menjadi:
a. 2 22 10 15 3 8
b. 2 3 22 10 15 8
c. 2 3 8 10 15 22
*d. 2 3 8 22 10 15
e. 2 3 8 15 10 22

15. Di ketahui data sebagai berikut:
5 3 4 2 1
dengan insertion sort, hasil iterasi ke 3 adalah:
a. 3 5 4 2 1
*b. 2 3 4 5 1
c. 3 4 5 2 1
d. 1 2 3 4 5
e. 3 4 5 1 2

16. Berapa banyak operasi perbadingan pada kondisi worst case pada proses STARITMAXMIN
*a. 2(n-1)
b.2n-1
c.n-1
d.3n/2 - 1
e.3/2n -1


17. Prinsip kerja bubble sort adalah sebagai berikut, kecuali
a. Pengecekan dimulai dari data ke 1 sampai data ke n
b. Membandingkan data ke-n dengan data sebelumnya (n-1)
c. Data dipindahkan bila bilangan yang dibandingkan lebih kecil dengan angka didepannya.
d. data tidak dipindahkan bila bilangan yang dibandingkan lebih kecil dengan angka didepannya.
*e. data tidak dipindahkan bila bilangan yang dibandingkan lebih besar dengan angka didepannya.

18. Prinsip kerja ascendingn quick sort adalah sebagai berikut, kecuali
a. menentukan lower bound
b. menentukan upper bound
c. tukarkan nilai lower bound bila lebih besar dari nilai upper bound
*d. tukarkan nilai lower bound bila lebih kecil dari nilai upper bound
e. jika lower bound lebih kecil sama dengan dari upper bound maka tidak ditukar.

19. Kumpulan Elemen – Elemen yang terurut dan memiliki tipe data yang sama disebut:
a. Rekursif d. File
b. Record e. Direktori
*c. Array

20. Pada Array 2 Dimensi dengan Ordo 4x4, dengan kondidsi A[I,J] = I , Jika I <= J, A[I,J] = J, Jika I>J Dari pernyataan diatas nilai dari A[2,2] adalah :
a. 1 d. 4
*b. 2 e.6
c. 3















21. Ada berapa simpul yang harus dibuat bila diselesaikan dengan colouring
a. 4 *d. 12
b. 8 e. 16
c. 10

22. Ada berapa simpul yang tidak dihubungkan dengan ruas
a. 1 *d. 4
b. 2 e.6
c. 3

23. Ada berapa ruas yang keluar dari tiap simpul
a. 1 *d. 4
b. 2 e. 5
c. 3

24. Bila fase perjalanan AC hijau maka perjalanan yang akan hijau adalah
a. DB,BD,CB,BA d. DB,BD,CB,BC
b. DA,AB,CD,BA e. DB,BD,CA,CD
*c. DA,AB,CD,BC



25. Ada berapa fase yang terbentuk untuk menyelesaikan permasalahan tersebut
a. 3 d. 6
*b. 4 e. 7
c. 5

26. Arti simpul yang dihubungkan ruas adalah
*a. Perjalanan saling melintas
b. Perjalanan tidak saling melintas
c. Perjalanan berdampingan
d. Perjalanan tidak berdampingan
e. Perjalanan tidak melewati persimpangan

27. Syarat pemberian warna pada colouring adalah
a. simpul yang berdampingan diberi warna yang sama.
*b. simpul yang berdampingan diberi warna berbeda .
c. simpul yang tidak dihubungkan ruas diberi warna.
d. Simpul yang tidak melintas diberi warna yang sama.
e. Simpul yang saling melintas diberi warna yang sama.

28. Sebuah matriks yang dideklarasika
int j [2] [4]
Jumlah elemen matriks tersebut adalah:
a. 2 *d. 8
b. 4 e.10
c. 6

29. Hal yang mempengaruhi kecepatan algoritma pengurutan data adalah
a. Jumlah data yang dimasukkan
*b. Jumlah operasi perbandingan
c. Jenis data yang dimasukkan
d. Bahasa program yang digunakan
e. Sistem operasi yang digunakan

30. Membagi n input menjadi k subset input yang berbeda ( 1 < k < n ) . Dari k subset yang berbeda akan terdapat k subproblem dan setiap subproblem mempunyai solusinya masing-masing . Hal ini merupakan prinsip dasar dari :
*a. D and C
b. Searching
c. Sorting
d. Rekursif
e. Branching

Kunci Jawaban

DCEACADAAB
AACDBAEDCB
DDDCBABDBA
Tipe File
==============================
I. Tipe file berdasarkan jenisnya:
A. File Master

Jenis informasi cenderung tetap, tetapi isi informasinya dapat sering berubah, dan selalu diperbarui menggunakan file transaksi.
1. File Referensi
Data yang tetap dimana pengolahan terhadap data tersebut memerlukan waktu yang lama. Data yang terdapat pada file referensi ini sebagai contoh adalah file Mahasiswa, yang
apabila akan diperbaiki(diedit)untuk jangka waktu yang lama, misalnya jika terjadi perbaikan pada pengisian data untuk alamat(jika mahasiswa tersebut pindah alamat rumah)maka isi data pada alamat untuk mahasiswa yang bersangkutan harus diperbaiki.

2. File Dinamik
=Data yang ada dalam file berubah tergantung transaksi,atau berubah secara berkala sebagai hasil dari suatu transaksi.
=Misalkan saja file mata kuliah yang di dalamnya terdapat informasi tentang seluruh mata kuliah yang terdapat disuatu lembaga pendidikan.Isi dari file mata kuliah dapat
diperbaiki(di-edit)jika kondisi yang ada di masa depan mengharuskan adanya pergantian mata kuliah dengan nama mata kuliah yang baru dan sks yang juga baru, maka perbaikan data untuk isi file mata kuliah mutlak dilakukan. Hal ini yang disebut dengan penyetaraan mata kuliah.

B. File Input (Transaksi)
=Digunakan untuk memperbarui/meng-update file master dengan informasi yang baru
=Meng-update dapat berupa penambahan record atau penghapusan record
=Berisi data masukan yang berupa data transaksi
dimana data-data tersebut akan diolah oleh komputer
=File transaksi akan senantiasa mengalami perubahan sesuai dengan periode waktu tertentu
=Macam file transaksi yang ada pada lembaga
pendidikan adalah file ujian, file nilai dan file pembayaran kuliah.

C. File Laporan (File Output)
=File ini berisi informasi yang akan ditampilkan dalam sebuah laporan.
=Isi dari Laporan yang dihasilkan biasanya berasal dari penggabungan file master dan file transaksi, tetapi tidak semua isi dari file-file tersebut ditampilkan, melainkan
hanya informasi tertentu saja yang ditampilkan sesuai dengan laporan yang diinginkan.
=File ini dapat dicetak di kertas, atau hanya ditampilkan saja di layar monitor.

D. File Pelindung(Backup File)
=Merupakan salinan(copy)data-data yang masih aktif di database(current database)pada suatu waktu tertentu dapat berupa file master maupun file transaksi.
=Adapun isi (informasi) dari file backup ini sama persis dengan file aslinya. Jika ada yang diperbaiki maka hasil perbaikan data tersebut harus dibuatkan kembali backup dari file yang diperbaiki.
=Frekuensi penggunaannya tergantung pada frekuensi perubahan isi file dan banyaknya rekaman transaksi yang digunakan untuk pembaharuan file.
=Digunakan sebagai pelindung atau cadangan apabila file master mengalami kerusakan atau hilang.

E. File Kerja(Work File)
=File ini berisi data hasil pemrosesan yang sifatnya sementara (temporary) dalam arti hanya numpang lewat saja.
=Datanya berupa record yg disusun sedemikian rupa sehingga dapat dipakai oleh program lain sebagai input.Biasanya file ini dibuat pada waktu proses sortir.

F. File Pustaka(Library File)
=File yang berisi program aplikasi, program utilitas dan program bantu yang dapat berfungsi untuk mempercepat dan optimalisasi dari pengolahan data.
=Contohnya : file gaji yang mempunyai keterhubungan dengan file pendidikan pegawai (untuk mencari jenjang pendidikan dari seorang karyawan),file absensi(untuk mengetahui data kehadiran pegawai) dan file lembur(untuk mengetahui intensitas kelebihan jam kerja yang dimiliki oleh seorang pegawai).

G. File History(Riwayat Hidup)
=File yang berisi data di masa lalu yang dipakai sebagai bahan pengecekan dan pencocokkan kevalidasian data di masa mendatang.
=File ini biasanya digunakan untuk periode waktu tertentu(lama), sehingga beberapa informasi harus dikumpulkan pada file riwayat hidup yang akan jarang diproses.
=Contoh : informasi tentang pasien yang keluar tidak perlu disimpan pada file yang sekarang ada.Record hanya dipindahkan pada file history sehingga tinggal berisi file pasien yang sedang dirawat atau dijadwalkan
akan kembali.Data pasien yang keluar disimpan di file history yang berguna untuk menyusun laopran di kemudian hari.

Selasa, 06 Maret 2012

latihan soal tehnik pemrograman

Soal-soal latihan

1. Karakterisitik bahasa pemrograman berorientasi objek yang
menyembunyikan data, fungsi dan prosedur dalam objek, adalah :
a. Polimorphism c.Inheritance
b. Modular * d. Enkapsulasi

2. Karakteristik utama bahasa pemrograman berorientasi objek,adalah :
a. Enkapsulasi c. polymorphism
b. Inheritance *d. Jawaban a, b dan c BENAR

3. Pemrograman berorientasi objek mencakup keaneka ragaman
objek yang menjamin terhimpunnya perpaduan keaneka ragaman
antara data dengan prosedur atau fungsi, adalah :
a. Enkapsulasi *c. polymorphism
b. Inheritance d. Jawaban a, b dan c BENAR

4. Meningkatkan extensibilitas dan penggunaan kembali perangkat lunak merupakan tujuan dari :
a. Pemrograman Terstruktur b. Pemrograman Top Down
*c. Pemrograman Object Oriented d. Pemrograman Modular

5. Dibawah ini pernyataan yang benar tentang metode dan objek, kecuali:
a. Metode merupakan suatu procedure atau fungsi yang disatukan dalam suatu objek
b. Didalam sebuah objek, metode didefinisikan dengan sesuatu header fungsi atau prosedur.
*c. Nama metode harus diletakkan sebelum nama objek yang memiliki metode tersebut
d. Diluar objek, sebuah metode didefinisikan secara penuh.

6. Dibawah ini adalah langkah-langkah dalam merancang file :
a. Menentukan banyaknya jumlah kebutuhan file b. Menentukan parameter file
*c. Jawaban a dan b benar d. Jawaban a dan b salah

7. Dibawah ini yang merupakan FIELD KEY dari suatu tabel pegawai perusahaan, adalah :
a. nama pegawai (napeg) *c. nomor induk pegawai (nipeg)
b. jabatan pegawai (japeg) d. gaji pegawai (gapeg)

8. Dibawah ini yang merupakan Akronim File dari suatu lingkungan pendidikan adalah :
a. Inputsiswa.prg *c. siswa.db
b. siswa01 d. nomor Induk Siswa (nis)

9. Dibawah ini merupakan teknik perancangan program untuk
mendukung dalam pengembangan sistem informasi, kecuali :
a. Teknik perancangan program dalam bentuk spesifkasi program
b. Teknik perancangan file dalam bentuk spesifikasi file
c. Teknik perancangan database dalam bentuk spesifikasi file
*d. Teknik perancangan program dalam bentuk spesifikasi file

10. Dibawah ini merupakan langkah-langkah dalam perancangan file,
kecuali :
*a. Menentukan SYSTEM FLOWCHART. b. Menentukan banyaknya jumlah file yang dibutuhkan.
c. Menentukan parameter dari file yang akan dibuat. d. Menentukan FIELD KEY

11. 1.Kecepatan akses data pada SASD tergantung pada :
a. Kerapatan pita c. Lebar celah antar blok
b. Kecepatan pita *d. Alamat pita

12. 2.Jika pada file mata kuliah yang didalamnya terdapat informasi tentang
seluruh mata kuliah yang terdapat di suatu lembaga pendidikan. Isi dari file
mata kuliah dapat diperbaiki (di edit) jika kondisi yang ada dimasa depan
mengharuskan adanya pergantian mata kuliahdengan nama mata kuliah
baru dan sks yang juga baru, maka perbaikan data untuk isi file mata
kuliah mutlak dilakukan. Hal ini yang disebut dengan penyetaraan mata
kuliah. Pernyataan di atas adalah contoh dari :
a. File Input *c. File Dinamik
b. File Laporan d. File Back up

13. 3. Ciri-ciri organisasi data file dengan metode sequential, kecuali :
a. Rekaman disimpan berdasarkan suatu kunci
b. Pencarian rekaman tertentu dilakukan record demi record sesuai kunci
c. Masing-masing record diberi indeks
*d. Jawaban a dan b BENAR

14. 4. Ciri-ciri dari piranti akses direct (DASD) adalah, kecuali :
*a. Tidak ada pengalamatan b. Pembacaan rekaman tidak harus urut
c. Mempunyai alamat d. Data disimpan dalam blok

15. 5. Organisasi data yang melakukan pencarian rekaman tertentu
dilakukan record demi record adalah :
a. Random *b. Sequential
c. Indexed Sequential d. Indexed Random

16. File yang berisi program-program bantu yang dapat berfungsi untuk
mempercepat dan optimalisasi dari pengolahan data, adalah :
a. File Kerja/temporary file *c. File Library
b. File Backup d. File Kerja

17. 2. File Mahasiswa yang apabila akan diperbaiki (diedit) untuk jangka
waktu yang lama adalah contoh dari tipe file :
*a File Dinamika c. File Referensi
b. File Sejarah d. File Transaksi

18. 3. Tipe file yang berisi data-data hasil pemrosesan yang bersifat
sementara, adalah :
*a. File Kerja c. File Input
b. File Back-Up d. File Master

19. 4. File dibawah ini yang bertipe File Master pada lembaga
pendidikan, adalah :
a. File Nilai *c. File Mahasiswa
b. File Pemabayaran d. File absensi

20. 5. Berisi program-program aplikasi atau utility program. File ini berisi
program-program bantu yang dapat berfungsi untuk mempercepat
dan optimalisasi dari pengolahan data, adalah :
a. File kerja c. File Backup
*b. File Library d. Jawaban Salah Semua

21. Pada tehnik pemrograman top down, hierarki dari modul-modul
digambarkan dengan :
a. Flowchart c. Pseudocode
b. Struktur Chart *d. Diagram HIPO

22. 2. Yang perlu diperhatikan untuk sebuah karakteristik modul yang baik
adalah, kecuali :
a. Logical Coherent c. Ukuran Modul
*b. Penulisan Program d. Independent

23. 3. Modul utama pada pemrograman terstruktur adalah, kecuali :
a. Modul yang mengendalikan semua proses yang terjadi dalam program.
*b. Modul dengan jumlah statement terbanyak
c. Modul yang memanggil modul lain.
d. Modul yang pertama kali dijalankan.

24. 4. Pemrograman yang menggunakan sub-routine adalah :
a. Pemrograman object oriented b. Pemrograman TOP-DOWN
*c. Pemrograman Modular d. Pemrograman Perulangan

25. 5. Dalam bahasa pemrograman Pascal, pernyataan subroutine
dinyatakan dengan perintah :
*a. PROCEDURE c. FOR….DO
b. WHILE …. DO d. BEGIN

26. Dibawah ini Bahasa pemrograman yang dapat menghasilkan file
EXECUTABLE adalah, kecuali :
a. PASCAL c. VISUAL BASIC
*b. BASIC d. DELPHI

27. 2. Menterjemahkan instruksi-instruksi dalam satu kesatuan modul kedalam
bahasa mesin sehingga dihasilkan suatu file executable, adalah
penterjemah bahasa pemrograman, yaitu :
a. Assembler *c. Compiler
b. Interpreter d. Debugging

28. 3. Z = ( 10 / 0 ) adalah contoh dari kesalahan program :
a. Syntax error c. Logic error
*b. Runtime error d. Jawaban a,b BENAR

29. 4. Akar minus (bilangan negatif) adalah contoh dari kesalahan program :
a. Syntax error c. Logic error *b. Runtime error d. Jawaban a,b BENAR


30. 5. Output potongan program dibawah ini adalah :
I := 1
While I < 5 DO
Begin
Write(‘Bina’);
I := I + 1;
End;
a. BinaBinaBina *c. BinaBinaBinaBina
b. BinaBina d. BinaBinaBinaBinaBina


SOAL JAWABAN
1. D enkapsulasi
2. D
3. C
4. C
5. C
6. C
7. C
8. C
9. D
10. A
11. D
12. C
13. D
14. A
15. B
16. C
17. A
18. A file kerja atau temporary
19. C
20. B
21. D
22. B
23. B
24. C
25. A
26. B
27. C
28. B runtime  kesalahan yang terjadi ketika program berjalan. Karena menjalankan operasi yang tidak diperkenankan
Contoh : adanya pembagian dengan 0 (nol)
29. B
30. C
Ketika i = 5 maka program keluar dari loop sehingan akan melakukan proses perulangan sebanyak 4 kali.

Rabu, 20 Juli 2011

tehnik pemrograman


PERTEMUAN 1


PENGENALAN DASAR
PEMROGRAMAN
I. Pengertian
Program adalah pernyataan yang disusun menjadi satu
kesatuan prosedur yang berupa urutan langkah yang
disusun secara logis dan sistematis untuk menyelesaikan
masalah.
Pemrograman adalah proses mengimplementasikan
urutan langkah untuk menyelesaikan suatu m asalah dengan
menggunakan bahasa pemrograman.
Bahasa Pemrograman adalah prosedur penulisan
program.
Programer adalah Orang yang membuat sebuah
program

Terdapat 3 faktor penting dalam bahasa pemrograman :
1. Sintaks adalah aturan penulisan bahasa tersebut (tata
bahasanya).
2. Semantik adalah arti atau maksud yang terkandung
didalam statement tersebut.
3. Kebenaran logika adalah berhubungan dengan benar
tidaknya urutan statement.
Dalam membuat sebuah program, kita harus m emakai
teknik pemrograman, adapun teknik-teknik
pemrograman tersebut diantaranya adalah :
• Pemrograman Procedural
• Pemrograman functional
• Pemrograman Terstruktur
• Pemrograman berbasis modul
• Pemrograman Berorientasi Objek
• Pemrograman Generic
• Pemrograman Deklaratif
2
II. Kriteria Bahasa Pemrograman
Beberapa kriteria pemilihan sebuah bahasa pemrograman :
• Clarity, simplicity dan unity
Kemudahan, kesederhanaan dan kesatuan
merupakan suatu kombinasi yang membantu
programer mengembangkan suatu algoritma.
• Orthogonality
Merupakan suatu atribut yang dapat dikombinasikan
dengan beragam fitur bahasa pemrograman sehingga
setiap kombinasinya mem punyai arti dan dapat
digunakan.
• Kewajaran untuk aplikasi
Bahasa pemrograman harus mempunyai struktur data,
operasi-operasi, struktur kontrol dan syntax yang tepat
untuk memecahkan suatu masalah.
• Mendukung abstraksi
Abstraksi merupakan suatu hal yang substansial bagi
programer untuk membuat suatu solusi dari m asalah
yang dihadapi.
• Kemudahan untuk verifikasi program
Dengan verifikasi data yang mudah, maka suatu
program akan dengan mudah dibangun dan
dikembangkan
3
6. Lingkungan Pemrograman
Lingkungan pem rogram an dapat berarti editor yang
digunakan, dokumentasi yang baik, fasilitas debugging,
user interface yang baik ataupun tools lain yang dapat
digunakan untuk memudahkan pekerjaan progamer.
• Portabilitas program
Kemudahan program untuk dipakai diberbagai jenis
komputer.
• Biaya Penggunaan
a. Biaya eksekusi program
b. Biaya kompilasi program
c. Biaya penciptaan, testing dan penggunaan program
d. Biaya pemeliharaan program
III. Aspek Pemrograman
Dalam pengolahan data dan pembuatan sebuah program
diperlukan beberapa aspek-aspek dasar yaitu :
A. Brainware
Tenaga pelaksana yang menjalankan serta mengawasi
pengoperasian sistem unit komputer didalam proses
pengolahan data untuk menghasilkan suatu informasi
yang tepat waktu, tepat guna dan akurat.
Contoh : Sistem Analis, Programmer, operator, Technical
Support, dll.
4
B. Hardware
Serangkaian unsur-unsur yang terdiri dari beberapa
perangkat keras komputer yang digunakan untuk
membantu proses kerja manusia ( Brainware ).
Contoh : CPU, Monitor, Keyboard, Harddisk, Disk drive, dll.
C. Software
Serangkaian unsur-unsur yang terdiri dari beberapa
perangkat lunak program komputer yang digunakan untuk
membantu proses kerja manusia ( Brainware ).
Contoh : Sistem Software, Application Software, Package
Software, dll
IV. Bahasa Pemrograman Berdasarkan Perkembangan
A. Machine Language
Bahasa Pemrograman yang hanya dapat dimengerti oleh mesin
( komputer ) yang didalamnya terdapat CPU yang hanya mengenal
2 (dua) keadaaan yang berlawanan, yaitu :
- Bila tejadi kontak (ada arus) bernilai 1
- Bila kontak terputus (tidak ada arus) bernilai 0
B. Low Level Language (Bahasa tingkat rendah)
Karena susahnya bahasa mesin, maka dibuatlah simbol yang
mudah diingat yang disebut dengan “Mnemonics” ( Pembantu
untuk mengingat ).
Contohnya : A : Untuk kata Add (Menambahkan)
B : Untuk kata Substract (mengurangi )
Mov : Untuk kata Move ( Memindahkan )
Bahasa Pemrograman yang menerjemahkan Mnemonics disebut
Assembler.
5
C. Middle Level Language (Bahasa tingkat menengah)
Bahasa pemrograman yang menggunakan aturan-aturan
gramatikal dalam penulisan pernyataan, mudah untuk
dipahami dan memilik instruksi - instruksi tertentu
yang dapat langsung diakses oleh komputer.
Contohnya adalah bahasa C.
D. High Level Language (Bahasa t ingkat tinggi)
Bahasa Pemrogram an yang dalam penulisan pernyataannya
mudah dipahami secara langsung. Bahasa
pem rogram an ini terbagi m enjadi 2 yaitu :
1. Procedure Oriented Language
a. Scientific
Digunakan untuk memecahkan persoalan
Matematis/perhitungan
Misal : Algol, Fortran, Pascal, Basic
b. Bussines
Digunakan untuk memecahkan persoalan dalam bidang
bisnis.
Misal : Cobol, PL/1.
2. Problem Oriented Language
Misal : RPG (Report Program Generator).
6
E. Object Oriented Language (Bahasa berorientasi
obyek) Bahasa pemrogram an yang berorientasi pada
obyek. Bahasa pemrograman ini mengandung fungsi-
fungsi untuk menyelesaikan suatu permasalahan
dan program tidak harus menulis secara detail semua
pernyataannya, tetapi cukup memasukkan kriteria-
kriteria yang dikehendaki saja
Contohnya : Visual dBase, Visual FoxPro, Delphi, Visual
C , dll.
7


PERTEMUAN 2

Konsep Dasar Pemrograman
I. Algoritma Pemrograman Yang Baik
Ciri-ciri algoritma pemrograman yang baik adalah :
• Memiliki logika perhitungan/metode yang tepat dalam
memecahkan masalah
• Menghasilkan output yang tepat dan benar dalam waktu
yang singkat
• Ditulis dengan bahasa yang standar secara sistematis
dan rapi sehingga tidak menimbulkan arti ganda.
• Ditulis dengan format yang mudah dipahami dan
diimplementasikan ke dalam bahasa pemrograman.
• Semua operasi yang dibutuhkan terdefinisi dengan jelas.
• Semua proses harus berakhir setelah sejumlah langk ah
dilakukan.
1
Berikut ini contoh program yang mempunyai algortima
yang TIDAK BAIK karena mengandung kesalahan
logika.
#include
void main ()
{
int i ;
i = 0 ;
while (bil <= 5)
{
printf (“Bina Sarana Informatika”\n);
i = i + i
}
return 0;
}
Berikut ini contoh program yang mempunyai algortitma
yang BAIK karena mempunyai logika yang benar
#include
void main ()
{
int i;
i = 0;
while (i <= 5)
{
printf (“Bina Sarana Informatika”\n);
i = i + 1
}
return 0;
}
2
II. Standar Suatu Program Yang Baik
A. Standar Pemecahan masalah
teknik untuk dapat membantu memecahkan masalah
antara lain teknik Top Down dan teknik Modular.
B. Standar Penyusunan Program
1. Kebenaran logika dan penulisan
Program yang disusun harus memiliki logika dalam
pemecahan masalah. Program yang dibuat harus
memiliki ketepatan, ketelitian dan kebenaran sehingga
menghasilkan program yang baik.
2. Waktu penulisan dan eksekusi program
a. Contoh Logika pengujian yang TIDAK BAIK karena
pengujian yang berulang-ulang sehingga waktu
eksekusi tidak efisien
if (kondisi1)
{
pernyataan_1;
………….
}
if (kondisi2)
{
pernyataan_2;
………….
}
if (kondisi1)
{
pernyataan_2;
………….
}
3






12/23/2006
b. Logika pengujian yang baik sehingga waktu lebih efisien:
if (kondisi1)
{
pernyataan_1;
………….
else
if (kondisi2)
pernyataan_2;
………….
else
if (kondisi3)
pernyataan_3;
………….
}
3. Perawatan dan pengembangan program
Penyusunan program harus mempunyai sifat
kesederhanaan dan kejelasan dari program yang
nantinya akan dikembangkan dan membantu dalam
perawatan.
4. Portabilitas
Bahasa pemrograman dan program yang disusun
sebaiknya bisa dipakai pada berbagai tipe komputer
yang berbeda-beda dan berbagai jenis sistem operasi.
4
C. Standar Perawat an Program
1. Dokumentasi
2. Penulisan Instruksi
a. Berikan keterangan untuk awal statement
atau instruksi yang tergabung dalam sekelompok
statement.
b. Awal dan akhir statement dari sekumpulan
statement ditulis pada kolom yang sama.
c. Gunakan sebaris atau beberapa baris kosong
sebagai pemisah.
d. Hindari pernyataan untuk Percabangan
(IF statement ) yang sangat rumit dan
Nested Loop (Loop disalam Loop lain) yang
berlebihan.
e. Gunakan “kurung buka dan tutup” dalam
menulis suatu ekspresi Aritmatika atau
logika.
f. Gunakan “Spasi” dalam menulis statement atau
instruksi.
5
III. Sifat Penulisan Program
a. Program Oriented
Penulisan program yang struktur programnya
selalu berubah, apabila kondisi data yang diproses di
dalam program tersebut, bertambah volume datanya.
Selain itu penulisan program ini bersifat statis dan
tidak fleksibel (program animasi)
b. Data Oriented
Penulisan program yang struktur programnnya
tidak selalu berubah, walaupun volume data yang
diproses di dalam program tersebut, dalam jumlah
besar. Selain itu pula penulisan program ini bersifat
dinamis dan mempunyai tingkat fleksibilitas yang
tinggi. (Contoh : Program aplikasi)
• Program Interaktif
Yaitu penulisan program yang terstruktur, dimana
programnya dapat dipergunakan oleh pengguna
secara mudah dan dapat dimengerti tentang proses
yang sedang dilakukan oleh program tersebut serta
dapat mengatur kebutuhan akan peranti masukan dan
keluaran.
6


PERTEMUAN 3

Tahapan Pembuatan
Program
I. Tahapan-Tahapan Membuat Program
A. Membuat Suatu Program Yang Kompleks
Untuk m embuat program yang besar dan kompleks,
programmer membutuhkan tahapan-tahapan dibawah ini :
1. Definisi Masalah
2. Analisis Kebutuhan
3. Desain Algoritma / Membuat Rumusan Pemecahan
Masalah
1
5. Bahasa Pemrograman
6. Testing dan Debugging
7. Dokumentasi
8. Pemeliharaan
B. Membuat Suatu Program Yang Sederhana
Untuk m embuat suatu program yang sederhana,
programmer tidak perlu menggunakan tujuh tahapan diatas,
tetapi cukup beberapa tahap saja, seperti :
1. Definisi Masalah
2. Desain Algoritma
3. Bahasa Pemrograman
4. Testing and Debugging
2
II. Karakt eristik Seorang Programmer
1. Mampu menyusun algoritma dengan baik dan logis.
2. Memiliki ketekunan dan ketelitian yang tinggi.
3. Menguasai bahasa dan teknik penulisan program
dengan baik.
4. Dapat bekerja sama dalam suatu tim.
5. Dapat bekerja secara efisien dan tepat waktu
III. Menulis Program Interaktif
1. Program harus dapat melakukan validasi terhadap setiap
data yang masuk.
2. PProgram harus dapat mengecek setiap kemungkinan-
kemungkinan yang penting, yang akan muncul pada data
masukan.
3. Buatlah format masukan sesederhana mungkin
4. Buatlah agar program dapat mem berikan tanda bahwa
data yang dikehendaki sudah terpenuhi.
3
Soal Latihan PT
1. Mendapatkan pemahaman tentang permasalahan yang ada,
sehingga akan diperoleh asumsi yang benar sebelum membuat
suatu program disebut :
a. Definisi Masalah c. Bahasa Pemrograman
b. Desain Algoritma d. Testing and Debugging
e. Profiling
2. Menguji program serta mengoreksi error yang terdeteksi disebut :
a. Definisi Masalah c. Bahasa Pemrograman
b. Desain Algoritma d. Testing dan Debugging
e. Profiling
2. Menguji program serta mengoreksi error yang terdeteksi disebut :
a. Definisi Masalah c. Bahasa Pemrograman
b. Desain Algoritma d. Testing dan Debugging
e. Profiling
3. Dibawah ini yang bukan merupakan karakteristik seorang
programmer yang baik adalah :
a. Mampu menyusun algoritma dengan baik dan logis.
b. Memiliki ketekunan dan ketelitian yang tinggi.
c. Menguasai bahasa dan teknik penulisan program dengan baik.
d. Tidak memerlukan kerjasama Tim
e. Tahan dalam kondisi tertekan(Under Pressure)
4
3. DibawAH ini yang bukan merupakan karakteristik seorang programmer yang
baik adalah :
a. Mampu menyusun algoritma dengan baik dan logis.
b. Memiliki ketekunan dan ketelitian yang tinggi.
c. Menguasai bahasa dan teknik penulisan program dengan baik.
d. Tidak memerlukan kerjasama Tim
e. Tahan dalam kondisi tertekan(Under Pressure)
4. Dalam menulis program interakti f diperlukan dibawah ini, kecuali :
a. Program harus dapat mengecek setiap kemungkinan yang penting, yang
akan muncul pada data masukan(validasi).
b. Program tidak memerlukan validasi terhadap setiap data yang masuk
c. Buatlah format masukan sesederhana mungkin
d. Berikan pesan, apabila program memerl ukan suatu waktu tunggu
e. Berikan keterangan/pesan bila user salah dalam input data
4. Dalam menulis program interaktif diperlukan dibawah ini, kecuali :
a. Program harus dapat mengecek setiap kemungkinan
kemungkinan yang penting, yang akan muncul pada data
masuk an.
b. Program tidak memerlukan validasi terhadap setiap data yang
masuk
c. Buatlah format masukan sesederhana mungkin
d. Berikan pesan, apabila pro gram memerlukan suatu waktu tunggu.
e. Berikan keterangan/pesan bila user salah dalam input data
5. Menentukan kebutuhan spesifik asi fungsi, kemampuan dan fasilitas
program yang akan dibuat, disebut :
a. Definisi masalah c. Desain Algoritma
b. Analisis kebutuhan d. Testing dan Debugging
e. Semua benar
5

PERTEMUAN 4


ELEMEN-ELEMEN BAHASA
PEMROGRAMAN
I. Elemen-Elemen Dalam Bahasa Pemrograman
Berikut adalah element-element pada bahasa
pemrograman:
1. Aturan Leksikal
2. Type data
3. Exspression
4. Statement
5. Function dan Procesure
1
A. Aturan Leksikal
1. Token
2. Komentar
3. Identifier
4. Keywords (Reserved Words)
5. Operator
a. Arithmetic Operator
b. Assignment Operator
c. Bitwise dan Logical Operator
d. Relational Operator
e. Pointer Operator
B. Tipe data
Pada suatu bahasa pemrograman umumnya telah
menyediakan tipe-tipe data yang sederhana (simple)
maupun yang Kompleks
I. Tipe Data Sederhana
a. Tipe integer : tipe data yang nilainya tidak
memiliki titik desimal.
Type Batas nilai Format
Int - 32768 ... 32767 Signed 16 bit
Long - 2147483678 ...
Signed 32 bit
2147283647
2
b. Tipe Real/float : tipe data yang nilainya merupakan
pecahan (memiliki titik desimal).
Type Batas nilai Format
float 3.4E-38 s/d 3.4E+38 unsigned 32 bit
double 1.7E-308 s/d 1.7E+308 unsigned 64 bit
Long double 3.4E-4932 s/d 1.1E+4932 unsigned 80 bit
c. BOOLEAN ATAU LOGICAL
Type data yang hanya mempunyai dua bentuk keluaran
yaitu nilai True dan False (Benar dan Salah) yang
dinyatakan dengan 1 dan 0, Sehingga satuan data yang
terpakai cukup satu bit saja. Operator yang digunakan
adalah : And, Or, Not, Xor
3
Input NOT (!) AND (&&) OR (||)
A B C !A !B !C A&&B&&C A||B||C
0 0 0 1 1 1 0 0
0 0 1 1 1 0 0 1
0 1 0 1 0 1 0 1
0 1 1 1 0 0 0 1
1 0 0 0 1 1 0 1
1 0 1 0 1 0 0 1
1 1 0 0 0 1 0 1
1 1 1 0 0 0 1 1
d. CHARACTER
Type data yang terdiri dari aksara (simbol) yang
meliputi digit numerik, character alfabetik dan spesial
character. Untuk menuliskan tipe char, karakter perlu
ditulis di dalam tanda petik tunggal ( ‘ )
Contoh :
‘A’ karakter berupa huruf A
‘1’ karakter berupa angka 1
‘*’ karakter simbol *
4
II. Tipe data Majemuk
a. String
merupakan sekumpulan dari beberapa karakter, yang
banyaknya berubah-ubah sesuai kebutuhan,besarnya 1
s/d 255 karakter.
Pemberian nilai String diapit dengan tanda petik ganda (“)
Bentuk umum penulisan tipe data ini adalah :
tipe_data pengenal [panjang] ;
pengenal = nama variabel
panjang = bilangan bulat yg menunjukan
jumlah karakter
Contoh : char nama[15] ;
C. Expression
Expression yang paling sederhana yaitu nama variable.
Expression yang lebih kompleks akan melibatkan operator-
operator, maupun pemanggilan function atau procedure.
D. Statement
1. Sim ple Statement
a. Assignment Statement
b. Statement untuk pemanggilan function atau
procedure
c. Jump Statement
5
2. Compound Statement
Compound statement (kumpulan statement) adalah
sekumpulan statement yang terdiri dari statement-statement
lain, termasuk juga iteration dan selection statement.
3. Iteration Statement
Iteration statement digunakan untuk melakukan perulangan
sekumpulan statement (compound statement).
E. Function dan Procedure
Procedure dan Function disebut juga subroutine, merupakan
blok statement yang dapat dipanggil dari lokasi yang berbeda
di dalam program. Yang membedakan antara function dan
procedure yaitu:
suatu function jika dijalankan/dipanggil akan mengembalikan
suatu nilai.
6
Ketika procedure atau function dipanggil, kita dapat
melewatkan suatu nilai ke dalam function atau procedure
tersebut. Nilai yang dilewatkan disebut juga argument
atau parameter. Ada dua cara melewatkan nilai, yaitu:
1. Passing by Value (Dilewatkan secara nilai)
2. Passing by Reference
7


PERTEMUAN 5

ANALISA STRUKTUR
PROGRAM
I. Flowchart
adalah metode untuk menggambarkan tahap-tahap
pemecahan masalah dengan menggambarkan simbl-
simbol tertentu yang mudah dimengerti, mudah
digunakan dan standar.
Dalam penulisan flowchart dikenal 2 (dua)
metode yaitu :
1
Contoh System Flowchart
Contoh Pemakaian program Flowchart
2
II. Pseudocode
Pseudocode berasal dari kata pseudo yang berarti m irip
atau menyerupai dan code yang berarti program.
Pseudocode adalah teknik tulisan untuk menggambarkan
algoritma menggunakan kode yang mirip dengan kode
pemrograman yang sebenarnya.
3
Studi kasus :
Setiap dosen membuat tugas pembuatan flowchart secara
berkelompok dengan studi kasus sebagai berikut:
1. Membuat deret bilangan ganjil yang dimulai dari 1.
2. Menentukan nilai maksimum dari 3 item data, misal
Nilai_1 = 74
Nilai_2 = 80
Nilai_3 = 79
4


PERTEMUAN 6



ANALISA STRUKTUR
PROGRAM LANJUTAN
I. Struktur Program
A. Struktur Berurutan (Sequence Structure)
Struktur Berurutan adalah struktur program yang paling
sederhana. Setiap baris program akan dikerjakan secara
urut dari atas ke bawah maka hanya ada satu cara
memulainya yaitu dari bagian atas, dan cara untuk
keluarnya yaitu dari bagian bawah.
1
Contoh Struktur Berurutan
. Struktur Seleksi(Selection Structure)
Struktur seleksi untuk melakukan proses pengujian pada
suatu kondisi dalam pengambilan keputusan. Kondisi adalah
suatu syarat yang mempunyai nilai kebenaran True atau
False.
2




































































































































































































































































































































































































































































































































































































































Ada beberapa macam struktur instruksi IF atau Sruktur
Seleksi yaitu :
Struktur seleksi dengan IF
1. Statement If berguna untuk memilih satu dari dua
kemungkinan yang ada. terjadi apabila kita dihadapkan
pada suatu Kondisi dengan dua pilihan BENAR/ SALAH.
Bentuk Umum :
if (kondisi)
pernyat aan ;
2. Statement/Perintah IF .....
3. Statement/Perintah Nested IF
Pernyataan if yang berada dalam pernyataan if yang lain
Bentuk umum :
if (syarat)
if (syarat)
....perintah;
else
....perintah;
else
if (syarat)
....perintah;
else
....perintah;
Selain menggunakan instruk si IF, Struktur Seleksi juga dapat
menggunakan instruksi Switch Case (Seleksi Ganda).
Untuk masalah tertentu instruksi Switch Case lebih memberi kejelasan
dibandingkan dengan instruksi IF.
Bentuk umum dari Switch Case
Bentuk Umum :
switch (ekspresi integer atau karakter)
{
case konstanta1:
...perintah;
break;
case konstanta2:
...perintah;
break;
default :
...perintah;
break;
}
4

C. Struktur Perulangan ( Looping Structure )
Struktur perulangan akan m elakukan proses berulang ulang
selama selama Kondisi bernilai True atau selama kondisi
perulangan terpenuhi.
Dan Kondisi akan berhenti jika hanya keadaan berubah
menjadi false atau kondisi perulangan tidak terpenuhi.
Struktur Perulangan terdiri dari :
Bentuk umum penulisan proses LOOP :
1. Statement While
2. Statement Do.....While
3. Statement FOR
a. Statement FOR Positif
b. Statement FOR Negatif
c. Statement FOR bersarang ( Nested Loop )
5
1. While
Perulangan akan terus akan dilaksanakan selama syarat
tersebut terpenuhi.
Bentuk Umum :
while (syarat)
pernyataan ;
2. Statement Do.....While
Perulangan akan dilaksanakan terlebih dahulu dan
pengujian perulangan dilakukan belakangan.
Bentuk Umum :
do
pernyataan;
while (syarat);
6
3. Statement For
Bentuk Umum :
For (inisialisasi; syarat pengulangan; pengubah nilai)
Inisialisasi : pemberian nilai awal
pengubah nilai : mengatur naik/turun
Contoh :
Untuk perulanga n positif
for (a =1; a<=10; ++a)
Untuk perulanga n negatif
for (a=10; a>=1; --a)
Nested For
Perulangan for di dalam perulangan for lainnya.
Bentuk Umum :
For (inisialisasi; syarat pengulangan; pengubah nilai)
{
For (inisialisasi; syarat pengulangan; pengubah nilai)
{
perintah ;
}
}
7






12/23/2006
II. Compiller Dan Interpreter
Source program yang telah ditulis dengan bahasa
pemrograman tingkat tinggi, tidak dimengerti oleh komputer
karena komputer hanya mengerti bahasa mesin. Oleh
sebab itu source program harus di terjemahkan ke dalam
bahasa mesin terlebih dahulu sebelum dijalankan
Source program Penterjemah Machine language
Terdapat 2(dua) jenis penterjemah yaitu :
1. Compiller
Compiller merupakan penerjemah bahasa
pemrograman yang menterjemahkan instruksi-instruksi
dalam satu kesatuan modul ke dalam bahasa m esin
sehingga dihasilkan suatu file executable.
2. Interpreter
Interpreter merupakan penerjemah bahasa
pemrograman yang menterjemahkan instruksi demi
instruksi pada saat eksekusi program.
8

III. Debugging Dan Bentuk Kesalahan program
Debugging adalah penghilangan semua kesalahan yang
ditemukan pada saat pengujian. Kesalahan terjadi
karena kecerobohan desain logika dan pengkodean.
Adapun macam-macam bentuk kesalahan program
yaitu
SYNTAX ERROR
Bentuk kesalahan program yang disebabkan karena
kesalahan didalam hal penulisan instruksi didalam
program.
Contoh.
- Count ( dalam bahasa C++ )
- Retur ( dalam bahasa C++ )
- dan lain-lain
9






12/23/2006
RUN TIME ERROR
Bentuk kesalahan program yang disebabkan karena
adanya proses arithmathic yang ILLEGAL / tidak bisa
diproses.
Contoh.
- B = ( 0 / 3 )
- Akar Minus
- dan lain-lain
LOGIC ERROR
Bentuk kesalahan program yang disebabkan karena
HUMAN-ERROR-LOGIC (kesalahan logika program
yang dibuat oleh programmer)
Contoh.
- Hasil / output program yang tidak sesuai
- Kesalahan program yang tidak dapat dideteksi
- dan lain-lain
10


pertemuan 7






12/23/2006
Tipe File
I. Tipe dari file
A. File Master
a. File Referensi
Data yang tetap dimana pengolahan terhadap data
tersebut memerlukan waktu yang lama. Data yang
terdapat pada file referensi ini sebagai contoh
adalah file Mahasiswa, yang apabila akan diperbaiki
(di edit) untuk jangka waktu yang lama, misalnya jika
terjadi perbaikan pada pengisian data untuk alamat
(jika mahasiswa tersebut pindah alamat rum ah)
maka isi data pada alamat untuk mahasiswa yang
bersangkutan harus diperbaiki
1






12/23/2006
b. File Dinamik
Data yang ada dalam file berubah tergantung
transaksi. Misalkan saja file mata kuliah yang
didalamnya terdapat informasi tentang seluruh mata
kuliah yang terdapat di suatu lembaga pendidikan. Isi
dari file mata kuliah dapat di perbaiki (di edit) jika
kondisi yang ada dimasa depan mengharuskan
adanya pergantian mata kuliah dengan nama mata
kuliah yang baru dan sks yang juga baru, maka
perbaikan data untuk isi file mata kuliah mutlak
dilakukan. Hal ini yang disebut dengan penyetaraan
mata kuliah.
B. File Input (Transaksi)
Berisi data masukkan yang berupa data transaksi
dimana data-data tersebut akan diolah oleh komputer.
Macam file transaksi yang ada pada lembaga
pendidikan adalah file ujian, file nilai dan file
pembayaran kuliah. File transaksi akan senatiasa
mengalami perubahan sesuai dengan periode waktu
tertentu
2






12/23/2006
C. File Laporan
Berisi informasi yang akan ditampilkan. File ini berisi
informasi yang akan ditampilkan dalam sebuah laporan.
Isi dari Laporan yang dihasilkan biasanya berasal dari
penggabungan file master dan file transaksi, tetapi tidak
semua isi dari file-file tersebut ditampilkan, melainkan
hanya informasi tertentu saja yang ditampilkan sesuai
dengan laporan yang diinginkan.
D. File Sejarah (History)
File sejarah disebut juga sebagai file arsip yaitu file
yang berisi data-data dimasa lalu yang sudah tidak aktif
lagi, tetapi perlu disimpan untuk keperluan di masa yang
akan datang atau sebagai dokumentasi.
3






12/23/2006
E. File Backup (Pelindung)
Berisi salinan data-data yang masih aktif di database
pada suatu waktu tertentu. File ini berisikan salinan
(Copy) dari suatu file entah file master maupun file
transaksi. Adapun isi (informasi) dari file backup ini
sama persis dengan file aslinya. Jika ada yang
diperbaiki maka hasil perbaikan data tersebut harus
dibuatkan kembali backup dari file yang diperbaiki.
F. File Kerja (Temporary File)
Berisi data-data hasil pemrosesan yang bersifat
sementara. File ini berisi data yang sifatnya sem entara
(tidak permanent) dalam arti hanya num pang lewat saja,
tetapi file ini dapat berfungsi untuk mempercepat dan
optimalisasi dari pengolahan data.
4




12/23/2006
G. File Library
Berisi program-program aplikasi atau utility program. File
ini berisi program-program bantu yang dapat berfungsi
untuk mempercepat dan optimalisasi dari pengolahan
data. Misalkan dalam file gaji yang m ana mempunyai
keterhubungan dengan file pendidikan pegawai (untuk
mencari jenjang pendidikan dari seorang karyawan), file
absensi (untuk megetahui data kehadiran pegawai) dan
file lembur (untuk mengetahui intensitas kelebihan jam
kerja yang dimiliki oleh seorang pegawai).
5

PERTEMUAN 8

Organisasi dan Akses File
I. ORGANISASI & AKSES FILE
Ada beberapa tipe organisasi file data yang digunakan,
yaitu susunan berurutan (sequential), berurutan diindeks
(indexed sequential), acak (random), dan acak diindeks
( indexed random ). Tujuan organisasi data di dalam
pemrograman terstruktur adalah :
Untuk menyediakan sarana pencarian record bagi
pengolahan, seleksi, atau penyaringan.
Memudahkan penciptaan atau pemeliharaan file .
1
Organisasi file data harus mempertimbangkan beberapa hal
penting, yaitu sebagai berikut :
1. Kemudahan dalam penyimpanan dan pengambilan data.
2. Kecepatan akses data/ efisiensi akses.
3. Efisiensi penggunaan media penyimpanan (storage
device).
Menurut penggunaannya ada 2 cara :
1. Batch;
Suatu proses yang dilakukan secara group atau kelompok.
2. Interactive;
Suatu proses yang dilakukan secara satu persatu, yaitu record demi
record
Terdapat dua jenis alat penyimpanan data file yang digunakan,
yaitu
1. Piransi Akses Serial ( Squential Access Storage Device
atau SASD). Alat penyimpanan dengan penyusunan dan
pembacaan data secara berurut yaitu satu catatan m engikuti
catatan lain.
Contoh peralatan yang term asuk jenis ini adalah magnetic
tape dan pita magnetic. Ciri - ciri dari piranti ini adalah
sebagai berikut :
a. Proses pembacaan rekaman harus berurutan.
b. Tidak ada pengamatan.
c. Data disimpan dalam blok – blok.
d. Proses write hanya bisa dilakukan sekali saja.
2
e. Kecepatan akses datanya, sangat tergantung pada:
1. Kerapatan pita ( char/inci ).
2. Kecepatan pita ( inci/detik ).
3. Lebar celah / gap antar blok.
Gambar Pita Magnetic
Keuntungan dan kerugian SASD:
Keuntungan:
Merupakan organisasi file yang sederhana.
Jarak setiap aplikasi yang tersimpan sangat jelas.
Metode penyimpanan didalam memory sangat sederhana,
sehingga efisien untuk menyimpan record yang besar.
Sangat murah untuk digunakan, sebab medianya cukup
menggunakan magnetic tape.
Kerugian:
Seandainya diperlukan perubahan data, maka seluruh record
yang tersimpan didalam master file, harus semuanya diproses.
Data yang tersimpan harus sudah urut (sorted).
Posisi data yang tersimpan sangat sulit untuk up-to-date, sebab
master file hanya bisa berubah saat proses selesai dilakukan.
Tidak dapat dilakukan pembacaan secara langsung.
3
Piranti Akses Direct ( Direct Access Storage Device atau
DASD).
Alat penyimpanan dengan penyusunan dan pembacaan
datanya langsung pada posisinya.
Contoh piranti akses tipe direct adalah cakram magnetic
(magnetic disk) yang terdiri dari hard disk atau floppy disk.
Piranti ini m empunyai ciri :
a. Pembacaan rekaman tidak harus urut.
b. Mempunyai alam at.
c. Data dapat disimpan dalam karakter atau blok.
d. Proses write dapat dilakukan beberapa kali
Keuntungan DASD:
Access secara langsung dengan tanpa harus membaca
seluruh data yang dimilikinya
Gambar Disk Teknologi terbaru SSD
4
Tiga metode susunan organisasi data file dalam media
penyimpanan fisik yang lazim untuk digunakan, yaitu sebagai
berikut :
1. Sequential
Metode ini memiliki ciri-ciri sebagai berikut:
•Rekaman disimpan berurutan.
•Pencarian record tertentu dilakukan secara berurutan dari
awal
•Metode ini baik untuk digunakan sebagai penyimpanan
yang bersifat periodik dan menyeluruh( backUp).
2. Random.
Dalam metode ini kunci rekaman ditransformasikan ke
alamat penyimpanan dalam media fisik secara acak
(random). Metode ini akan menimbulkan beberapa
masalah, yaitu adanya alamat yang muncul lebih dari satu
kali, dan ada alamat yang tidak pernah m uncul sama sekali.
Permasalahan seperti ini diatasi dengan teknik overflow
location, yaitu dengan m enggunakan alamat yang ada
disampingnya.
5
3. Indexed Sequential.
Metode ini memilki ciri-ciri sebagai berikut:
a. Merupakan gabungan sequential dan random
b. Record disimpan secara sequential dan menggunakan
kunci.
c. Masing-masing record diberi indek
d. Pengalamatan dilakukan secara random
e. Perlu penyimpanan tambahan berupa file index
6

PERTEMUAN 9



Aplikasi Pemrograman
Bisnis
I. TEKNIK PERANCANGAN PROGRAM ORIENTASI
BUSSINES
Berikut ini akan dijelaskan beberapa teknik
perancangan program didalam sebuah pemrograman
yang terstruktur untuk mendukung proses
pembangunan / pengembangan sistem
Penggajian(Payrol).
Teknik perancangan file atau database dalam bentuk
spesifikasi file
Teknik perancangan program dalam bentuk spesifikasi
program
1
Langkah-langkah didalam merancang file
Adapun mengenai langkah-langkah didalam perancangan
file tersebut adalah sebagai berikut :
1.Menentukan banyaknya jumlah kebutuhan file yang nanti
akan digunakan didalam program .
2.Menentukan Parameter dari file yang akan dibuat.
Program payrol adalah sebuah aplikasi yang melakukan
proses perhitungan gaji pegawai, dengan dasar input absen
dan proses dilakukan secara batch atau tunda(satu kali
dalam sebulan).
Sekilas analisa program payrol
Input :
• Data absen harian
Proses
Penghitungan Gaji
Parameter perhitungan
* Tunjangan pegawai(status pegawai)
* Gaji pokok(golongan)
* Rate lembur
Output
Laporan Gaji bulanan
2
Contoh File database pegawai
No Elemen data Akronim Tipe Lenght Keterangan
1 Nomor induk
NIP Char 6 PK
pegawai
2 Nama Pegawai NaPeg Char 50
3 Alamat almPeg Char 50
4 Dst
180(misal)
Parameter File meliputi hal-hal sebagai berikut :
a.Menentukan NAMA-FILE
Contoh : File-Induk-Pegawai, Rate_lembur, Absensi dll.
b.Menentukan AKRONIM-FILE
Contoh : Pegawai.dbf, RateLembur.dbf, Absensi.dbf
c. Menentukan KODE-FILE
Contoh : Pgw01, Rlembur01, Absen01
d. Menentukan TYPE-FILE (file induk,file transaksi dll)
Contoh : File-Induk, File-kerja, File-input
3
e. Menentukan Panjang Record (RECORD-SIZE)
Contoh : 180 Character,
f. Menentukan ORGANISASI-FILE
Contoh : Index-Sequential
g. Menentukan ACCESS-FILE
Contoh : Random
h. Menentukan MEDIA-FILE
Contoh : Harddisk
i. Menentukan FIELD-KEY
Contoh : Nomor induk pegawai (NIP)
j. Menentukan SOFTWARE yang digunakan
Contoh : MySql
Langkah-langkah merancang PROGRAM
Adapun mengenai langkah-langkah didalam perancangan
program adalah sebagai berikut :
a. Menentukan Parameter dari Program yang akan dibuat.
b. Menentukan banyaknya jumlah kebutuhan program yang
nanti akan dibuat.
Parameter Program meliputi hal-hal sebagai berikut :
1. Menentukan NAMA-PROGRAM
Contoh : Program Penggajian
2. Menentukan AKRONIM-PROGRAM
Contoh : payRol.class
4
c. Menentukan KODE-PROGRAM
Contoh : pR01
d. Menentukan FUNGSI-PROGRAM
Contoh : Program running otomatis sesuai tanggal
setting yang disepakati(hari gajian) dengan
Crontap proses.
e. Menentukan PAKET-PROGRAMMING LANGUAGE
Contoh : Java
f. Menentukan bentuk SISTEM FLOWCHART /
PROGRAM FLOWCHART
g. Mentukan bentuk PROSES-PROGRAM secara rinci
dan detail
5


PERTEMUAN 10


Tipe File
I. Tipe dari file
A. File Master
a. File Referensi
Data yang tetap dimana pengolahan terhadap data
tersebut memerlukan waktu yang lama. Data yang
terdapat pada file referensi ini sebagai contoh
adalah file Mahasiswa, yang apabila akan diperbaiki
(di edit) untuk jangka waktu yang lama, misalnya jika
terjadi perbaikan pada pengisian data untuk alamat
(jika mahasiswa tersebut pindah alamat rum ah)
maka isi data pada alamat untuk mahasiswa yang
bersangkutan harus diperbaiki
1
b. File Dinamik
Data yang ada dalam file berubah tergantung
transaksi. Misalkan saja file mata kuliah yang
didalamnya terdapat informasi tentang seluruh mata
kuliah yang terdapat di suatu lembaga pendidikan. Isi
dari file mata kuliah dapat di perbaiki (di edit) jika
kondisi yang ada dimasa depan mengharuskan
adanya pergantian mata kuliah dengan nama mata
kuliah yang baru dan sks yang juga baru, maka
perbaikan data untuk isi file mata kuliah mutlak
dilakukan. Hal ini yang disebut dengan penyetaraan
mata kuliah.
B. File Input (Transaksi)
Berisi data masukkan yang berupa data transaksi
dimana data-data tersebut akan diolah oleh komputer.
Macam file transaksi yang ada pada lembaga
pendidikan adalah file ujian, file nilai dan file
pembayaran kuliah. File transaksi akan senatiasa
mengalami perubahan sesuai dengan periode waktu
tertentu
2
C. File Laporan
Berisi informasi yang akan ditampilkan. File ini berisi
informasi yang akan ditampilkan dalam sebuah laporan.
Isi dari Laporan yang dihasilkan biasanya berasal dari
penggabungan file master dan file transaksi, tetapi tidak
semua isi dari file-file tersebut ditampilkan, melainkan
hanya informasi tertentu saja yang ditampilkan sesuai
dengan laporan yang diinginkan.
D. File Sejarah (History)
File sejarah disebut juga sebagai file arsip yaitu file
yang berisi data-data dimasa lalu yang sudah tidak aktif
lagi, tetapi perlu disimpan untuk keperluan di masa yang
akan datang atau sebagai dokumentasi.
3
E. File Backup (Pelindung)
Berisi salinan data-data yang masih aktif di database
pada suatu waktu tertentu. File ini berisikan salinan
(Copy) dari suatu file entah file master maupun file
transaksi. Adapun isi (informasi) dari file backup ini
sama persis dengan file aslinya. Jika ada yang
diperbaiki maka hasil perbaikan data tersebut harus
dibuatkan kembali backup dari file yang diperbaiki.
F. File Kerja (Temporary File)
Berisi data-data hasil pemrosesan yang bersifat
sementara. File ini berisi data yang sifatnya sem entara
(tidak permanent) dalam arti hanya num pang lewat saja,
tetapi file ini dapat berfungsi untuk mempercepat dan
optimalisasi dari pengolahan data.
4
G. File Library
Berisi program-program aplikasi atau utility program. File
ini berisi program-program bantu yang dapat berfungsi
untuk mempercepat dan optimalisasi dari pengolahan
data. Misalkan dalam file gaji yang m ana mempunyai
keterhubungan dengan file pendidikan pegawai (untuk
mencari jenjang pendidikan dari seorang karyawan), file
absensi (untuk megetahui data kehadiran pegawai) dan
file lembur (untuk mengetahui intensitas kelebihan jam
kerja yang dimiliki oleh seorang pegawai).
5

PERTEMUAN 11


kode program merupakan kelanjutan dari
proses perancangan
• Spesifikasi perangkat lunak :
a. Struktur data
b. Aliran dinamis dari kendali
c. Transformasi fungsional
• Beberapa bahasa pemrograman berorientasi obyek :
a. C++
b. Java
c. Smalltalk
1
• C++ adalah salah satu bahasa pemrograman komputer.
Dibuat pada tahun 1980an oleh Bell Labs sebagai
pengembangan dari Bahasa Pemrograman C. Salah
satu perbedaan yang paling mendasar dengan bahasa C
adalah C++ medukung konsep pemrograman
berorientasi objek (Object Oriented Language).
• C++ merupakan bahasa pemrograman yang case
sensitive.
• Contoh kompiler Produk dari Borland untuk kom piler
C++ adalah Turbo C++, Borland C++, Borland C++
Builder. Sedangkan dari Microsoft adalah Ms. Visual
C++.
• Java adalah bahasa pemrograman berorientasi objek
yang dikembangkan oleh Sun Microsystems sejak tahun
1991.
• Bahasa Pem rograman Java pertama lahir dari The
Green Project, yang berjalan selama 18 bulan, dari awal
tahun 1991 hingga musim panas 1992. Proyek tersebut
belum menggunakan versi yang dinamakan Oak. Proyek
ini dimotori oleh Patrick Naughton, Mike Sheridan,
James Gosling dan Bill Joy, beserta sembilan
pemrogram lainnya dari Sun Microsystems. Salah satu
hasil proyek ini adalah maskot Duke yang dibuat oleh
Joe Palrang.
• Java adalah bahasa pemrograman yang mirip dengan
C/C++
• Keunggulanya adalah Java dapat berjalan dibanyak
flatform perangkat keras(Multy Flatform).
2
• Smalltalk adalah bahasa pemrogram an berorientasi
objek yang pertama kali populer.
• Smalltalk dikembangkan di Xerox PARC-Amerika
serikat.
• Ide dasar Smalltalk meliputi :
1. Semua adalah objek.
2. Objek bisa saling berkomunikasi melalui messages
atau berita.
3. Semua tersedia untuk dimodifikasi.
Beberapa hal yang harus diperhatikan dalam menentukan
Objek dalam suatu program
1. Correctness and Sufficiency
Dalam mendesain program sebaiknya kita memperhatikan
bahwa object-object yang kita desain dapat menjamin
kebenaran informasi dan juga kecukupan informasi yang
dibutuhkan
2. Robustness
Object-object yang kita desain sebaiknya dapat membuat
suatu program menjadi tangguh, dalam hal ini diharapkan
program yang dibuat memiliki error yang sedikit dan dapat
bertahan dalam situasi yang sulit sekalipun.
3
3. Flexibility
Object-object yang didesain sebaiknya mudah untuk diexpand
atau dikembangkan (bersifat flexibel). Hal ini dibutukan
karena dalam pembuatan program sering kali kita harus
merubah desain yang telah kita buat sebelumnya karena
adanya perubahan desain yang diinginkan oleh
user/pengguna.
4. Reusability
Kode-kode program yang telah kita buat, dapat kita gunakan
kembali. Hal ini haruslah terpenuhi dalam mendesain program
yang baik. Karena ketika kita menggunakan point ini maka
kita akan lebih mudah untuk me-manage program yang kita
buat, apalagi disaat kita harus mengganti suatu informasi
dalam program yang kita buat.
5. Efficiency
Desain yang kita buat sebaiknya efisien karena akan berkaitan
dengan penggunaan resource hardware yang kita gunakan.
Baik itu dalam faktor kecepatan maupun dalam faktor
penyimpanan data/program.
Beberapa hal diatas sangat penting untuk diterapkan agar
program atau aplikasi yang kita bangun lebih tangguh, sebab
menuliskan kode program tidak hanya sekadar mengetikkan
perintah-perintah yang menginstruksikan aplikasi untuk
mengerjakan sesuatu, tetapi dapat juga merupakan seni
membangun struktur kode program dengan kaidah tertentu.
4
II. Implementasi OOP pada C++
• Implementasi Konsep Pengkapsulan
(Encapsulation) dengan C++
• Salah satu keistimewaan C++ adalah
pengkapsulan
• Pengkapsulan adalah mengkombinasikan suatu
struktur dengan fungsi yang memanipulasinya
untuk membentuk tipe data baru yaitu
kelas(class)
• Kelas pada C++ ada 3, yaitu:
1. Private
2. Public
3. Protected
Contoh program :
5
B. Implementasi Konsep Pewarisan (inheritance) dengan
C++
C++ memungkinkan untuk implementasi inheritance
Contoh program :
class nama_kelas_turunan : sifat_penurunan
nama_kelas_dasar
{
.......// Implementasi kelas turunan
}
• Program tersebut menunjukan pola dasar
dari inherintance dimana sifat penurunya
bisa berupa protected serta public.
• Protected : hanya dikenali oleh kelas-kelas
turunan
• Public : fungsi yang dapat dibaca dan
diakses oleh siapapun.
6
# i nc lud e
Cl as s B
{
i nt a ; // p riv a te ; tid a k bi s a d iw a ris ka n
p ub l ic :
i nt b ; //p ub lic ; s ia p u ntuk d iw a ris ka n
v o id g et_ a b( ) ;
i nt g e t_a ( vo id ) ;
v o id s how _ a( v oi d) ;
};
Cl as s D : p ub lic B //ke la s turun an d ari B
{
Cl as s c;
Pub lic ;
V oid m ult ip ly (v o id );
V oid d is p la y (v o id );
};
V oid B : : g et_ a b( v oi d )
{a =5 ; b= 1 0;
Int B :: g e t_a ( )
{re turn a;
V oid B : : s how _ a( )
{c out <<“a =“ << a << “\n” ;
V oid D : : m ulti p ly ()
{c = b * g et _a () ;
V oid D : : d is p la y ()
{c out <<“a = “ <c o ut <<“ b =“ < < b <<“ \n” ;
c o ut <<“ c= “<< c <<“ \n”;
//Prog ra m Uta m a
Ma in ( )
{
D d;
d. g e t_a b () ;
7
d. M ul tip ly () ;
d. s ho w _a () ;
d. B = 2 0 ;
d. M ul tip ly () ;
d. d is p la y ;
}
Hasil dari program tersebut setelah dijalankan :
a = 5
b = 10
c = 50
a = 5
b = 20
c = 100
Keterangan dari program :
• Kelas D adalah turunan yang bersifat public dari
kelas dasar B. Lebih jauh D mewarisi seluruh
data serta fungsi yang bersifat public. Anggota
yang bersifat public dari kelas dasar B juga
adalah anggota yang bersifat public pada kelas
turunanya(kelas D)
• Data serta fungsi yang bersifat private pada B
tidak diwariskan pada kelas D. Disamping fungsi
serta data yang merupakan warisan dari B,
Kelas D juga memiliki fungsi-fungsi yang bersifat
unik pada D yaitu multiply () serta display ().
8
C. Implementasi Konsep Polimorfisme dengan C++
9


PERTEMUAN 12

Pengenalan UML
I. Pengertian UML
Jika pendekatan terstruktur memiliki DFD, ERD,
dsb yang digunakan sebagai tools-tools
perancangan sistemnya, maka UML berangsur-
angsur mulai menjadi standart tools untuk
pembuatan OOP.
UML (Unified Modeling Language ) berangsur-
angsur menjadi standar metodologi
pengembangan sistem informasi dan perangkat
lunak berorientasi objek.
1
Keunggulan UML :
1. Uniformity
2. Understandability
3. Stability
4. Reusability
II. Pengenalan diagram dalam UML
UML Menggunakan 9 macam diagram untuk
mendeskripsikan sistem/perangkat lunak yang akan
dikembangkan, yaitu :
1. Digram kelas
2. Digram Objek
3. Diagram use-case
4. Sequence diagram
5. Collaboration diagram
6. Statechart diagram
7. Activity diagram
8. Component diagram
9. Deployment diagram
2
Collaboration Diagram
• Collaboration diagram juga menggambarkan
interaksi antar objek seperti sequence diagram,
tetapi lebih menekankan pada peran masing-
masing objek dan bukan pada waktu
penyampaian
message.
Setiap message memiliki sequence number, di
mana message dari level tertinggi memiliki
nomor 1. Messages dari level yang sama
memiliki prefiks yang sama.
8
Component Diagram
• Component diagram menggambarkan struktur dan
hubungan antar komponen piranti lunak, termasuk
ketergantungan (dependency) di antaranya.
• Komponen piranti lunak adalah m odul berisi code, baik
berisi source code maupun binary code, baik library
maupun executable, baik yang muncul pada compile
time, link time, maupun run time. Umumnya komponen
terbentuk dari beberapa class dan/atau package, tapi
dapat juga dari komponen-komponen yang lebih kecil.
Komponen dapat juga berupa interface, yaitu kumpulan
layanan yang disediakan sebuah komponen untuk
komponen lain.
9
Deployment Diagram
• Deployment/physical diagram menggambarkan detail
bagaimana komponen di-deploy dalam infrastruktur
sistem, di mana komponen akan terletak (pada mesin,
server atau piranti keras apa), bagaimana kemampuan
jaringan pada lokasi tersebut, spesifikasi server, dan hal-
hal lain yang bersifat fisikal
• Sebuah node adalah server, workstation, atau piranti
keras lain yang digunakan untuk men-deploy komponen
dalam lingkungan sebenarnya. Hubungan antar node
(misalnya TCP/IP) dan requirement dapat juga
didefinisikan dalam diagram ini.
10
Langkah-langkah Penggunaan UML (1)
• Buatlah daftar business process dari level tertinggi untuk
mendefinisikan aktivitas dan proses yang mungkin
muncul.
• Petakan use case untuk tiap business process untuk
mendefinisikan dengan tepat fungsionalitas yang harus
disediakan oleh sistem. Kemudian perhalus use case
diagram dan lengkapi dengan requirement, constraints
dan catatan-catatan lain.
• Buatlah deploym ent diagram secara kasar untuk
mendefinisikan arsitektur fisik sistem.
• Definisikan requirement lain (non-fungsional, security
dan sebagainya) yang juga harus disediakan oleh
sistem.
• Berdasarkan use case diagram , mulailah membuat
activity diagram.
Langkah-langkah Penggunaan UML (2)
• Definisikan objek-objek level atas (package atau domain) dan
buatlah sequence dan/atau collaboration diagram untuk tiap alir
pekerjaan. Jik a sebuah use case memiliki kemungkinan alir normal
dan error, buatlah satu diagram untuk masing-masing alir.
• Buarlah rancangan user interface model yang menyediakan
antarmuka bagi pengguna untuk menjalankan skenario use case.
• Berdasarkan model-model yang sudah ada, buatlah class diagram.
Setiap package atau domain dipecah menjadi hirarki class lengkap
dengan atribut dan metodanya. Ak an lebih baik jika untuk setiap
class dibuat unit test untuk menguji fungsionalitas class dan
interaksi dengan clas s lain.
• Setelah class diagram dibuat, kita dapat melihat kemungk inan
pengelompokan class menjadi komponen-komponen. Karena itu
buatlah c omponent diagram pada tahap ini. Juga, definisikan tes
integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan
baik.
11




12/23/2006
Langkah-langkah Penggunaan UML (3)
• Perhalus deployment diagram yang sudah dibuat.
Detilkan kemampuan dan requirement piranti lunak,
sistem operasi, jaringan, dan sebagainya. Petakan
komponen ke dalam node.
• Mulailah membangun sistem. Ada dua pendekatan yang
dapat
digunakan
- Pendekatan use case, dengan meng-assign setiap use
case kepada tim pengembang tertentu untuk
mengembangkan unit code yang lengkap dengan tes.
- Pendekatan komponen, yaitu meng-assign setiap
komponen kepada tim pengembang tertentu.
• Lakukan uji modul dan uji integrasi serta perbaiki model
berserta codenya. Model harus selalu sesuai dengan
code yang aktual
• Piranti lunak siap dirilis.
12













































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































12/23/2006
Use case diagram
Use case diagram menggambarkan
fungsionalitas yang diharapkan dari sebuah
sistem. Yang ditekankan adalah “apa” yang
diperbuat sistem, dan bukan “bagaimana”.
Sebuah use case merepresentasikan
sebuah interaksi antara aktor dengan sistem
Contoh Use Case(UC)
3






12/23/2006
Class Diagram
• Class adalah sebuah spesifikasi yang jika diinstansiasi
akan m enghasilkan sebuah objek dan merupakan inti
dari pengembangan dan desain berorientasi objek.
Class m enggambarkan keadaan (atribut/properti) suatu
sistem, sekaligus menawarkan layanan untuk
memanipulasi keadaan tersebut (metoda/fungsi).
• Class diagram menggambarkan struktur dan deskripsi
class, package dan objek beserta hubungan satu sama
lain seperti containment, pewarisan, asosiasi, dan lain-
lain.
Class Diagram
Class m emiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda
Atribut dan metoda dapat memiliki salah satu sifat berikut :
• Private, tidak dapat dipanggil dari luar class yang
bersangkutan
• Protected, hanya dapat dipanggil oleh class yang
bersangkutan dan anak-anak yang mewarisinya
• Public, dapat dipanggil oleh siapa saja
4


















































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































StateChart Diagram
Statechart diagram menggambarkan transisi
dan perubahan keadaan (dari satu state ke
state lainnya) suatu objek pada sistem
sebagai akibat dari stimuli yang diterima.
Pada umumnya statechart diagram
menggambarkan class tertentu (satu class
dapat memiliki lebih dari satu statechart
diagram)
5
Activity Diagram
• Activity diagrams menggambarkan berbagai alir aktivitas dalam
sistem yang sedang dirancang, bagaimana masing-masing alir
berawal, decision yang mungkin terjadi, dan bagaimana mereka
berakhir. Activity diagram juga dapat menggambark an proses
paralel yang mungkin terjadi pada beberapa eksekusi.
• Activity diagram merupakan state diagram khusus, di mana
sebagian bes ar state adalah action dan sebagian besar transisi di-
trigger oleh selesainya state sebelumnya (internal processing). Oleh
karena itu activity diagram tidak menggambarkan behaviour internal
sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi
lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari
level atas sec ara umum.
6
Sequence Diagram
• Sequence diagram menggambarkan interaksi antar objek di
dalam dan di sekitar sistem (termasuk pengguna, display, dan
sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagram terdiri atar dimensi vertikal (waktu)
dan dimensi horizontal (objek-objek yang terkait).
• Sequence diagram biasa digunakan untuk menggambarkan
skenario atau rangkaian langkah-langkah yang dilakukan
sebagai respons dari sebuah event untuk menghasilkan
output tertentu. Diawali dari apa yang men-trigger aktivitas
tersebut, proses dan perubahan apa saja yang terjadi secara
internal dan output apa yang dihasilkan
7