Nama : Ghifary Arhabizhafran Yasin
NPM : 54414518
Mata Kuliah : Algoritma dan Pemrograman 1A
Dosen : Kunto Bayu A, ST
1. Penerapan Konsep Tabel Pada Algoritma Pemrograman
Argumen dan Fungsi
Tabel merupakan data pembantu dalam pengolahan data. Contoh :
Argumen dan Fungsi
Tabel merupakan data pembantu dalam pengolahan data. Contoh :
NPM
|
Nilai UTS
|
56278655
|
85
|
54777122
|
60
|
58652211
|
90
|
54416622
|
70
|
53312115
|
80
|
Dari data tersebut tidak dapat diketahui nama setiap mahasiswa. Untuk itu dapat
dibuat suatu tabel yang berisi khusus untuk nama mahasiswa seperti dibawah ini :
NPM
|
NAMA
|
56278655
|
Umar
|
54777122
|
John
|
58652211
|
Rick
|
54416622
|
Jessica
|
53312115
|
Rudi
|
Item NPM merupakan item yang dipakai sebagai acuan untuk mencari data nama mahasiswa di
dalam tabel. Item ini berfungsi sebagai kontrol field yang sering disebut
ARGUMEN. Sedang item NAMA merupakan FUNCTION dari tabel tersebut.
Penggunaan
Storage untuk Penyimpanan Tabel
Data di dalam
media penyimpanan seperti disk, kartu, dokumen dll yang berfungsi sebagai tabel
disebut External Tabel. Dalam proses
pengolahan data, external tabel ini sebaiknya dipindahkan ke memori agar proses
menjadi cepat. Di dalam
memori external tabel menempati lokasi yang disebut storage. Di storage ini
terbentuk suatu tabel yang disebut sebagai Internal Tabel. Selanjutnya proses
pengolahan data menggunakan internal tabel.
Flowchart
proses pembentukan internal tabel
- Setiap data yang dibaca dari external tabel disimpan di dalam NPMTAB(I) dan NMTAB(I). Variabel ini merupakan variabel berindeks atau variabel array.
- Variabel array merupakan suatu variabel dengan beberapa tempat penyimpanan.
Proses
Pencarian
Proses pencarian
di dalam internal tabel dilakukan dengan berpatokan pada nilai indeksnya. Misal untuk
mencari nama mahasiswa dengan NPM = 56278655 dapat digambarkan melalui
flowchart berikut :
Pengurutan
dengan Eksternal Tabel
1. Pembentukan
File Indeks
Proses
pengurutan bilangan dilakukan di internal tabel. Semua bilangan yang akan
diurutkan disimpan dahulu ke suatu penyimpanan di dalam memori yaitu variabel
array.
Di memori,
proses pengurutan dapat dilakukan dengan lebih cepat. Namun jika datanya
banyak, maka proses ini akan membutuhkan ukuran memori yang besar. Untuk
menghindarinya, proses pengurutan dilakukan di dalam eksternal tabel.
Eksternal
tabel dibentuk dengan cara membuat file baru. File ini desebut sebagai File
Indeks. Isi file indeks adalah field yang berfungsi sebagai field kunci (key
field) dari record data yang akan diurutkan. Key Field merupakan field yang
dipakai sebagai dasar pengurutan. Misal data yang harus diurutkan berdasarkan
NPM, maka field kuncinya adalah field yang berisi NPM.
Secara garis
besar, proses pengurutan dengan eksternal tabel terdiri dari langkah-langkah
Bentuk file
indeks yang hanya berisi field kunci. Lakukan
pengurutan pada file indeks. Pengurutan dapat dilakukan dengan metode bubble sort atau straight selection.
Pindahkan
record dari file lama ke file baru dengan posisi record sesuai pada file
indeks.
2. Proses Pembentukan File Indeks
NPM
|
NAMA
|
ALAMAT
|
56278655
|
Umar
|
Jl P
|
54777122
|
John
|
Jl G
|
58652211
|
Rick
|
Jl X
|
54416622
|
Jessica
|
Jl Z
|
53312115
|
Rudi
|
Jl R
|
/*
|
Jika data di
file PEG.DTA ingin diurutkan berdasarkan NPM, maka harus dibentuk file indeks
yang hanya berisi field NPM. Proses pembentukan file indeks ini dapat
digambarkan melalui flowchart :
Berdasarkan flowchart diatas, terbentuk file
indeks yaitu INDEKS.DTA.
NPM
|
KETERANGAN
|
56278655
|
Record pertama
|
54777122
|
Record kedua
|
58652211
|
Record ketiga
|
54416622
|
Record keempat
|
53312115
|
Record kelima
|
2. Teknik Switching Pada Algoritma Pemrograman
Teknik
switching merupakan cara memperpendek jalur proses. Teknik ini memakai suatu
indikator untuk mengantisipasi proses yang akan dilakukan selanjutnya.
Indikator ini dapat dimisalkan seperti Switch pada tombol lampu, dimana tombol
ini dapat mengatur dua kondisi yaitu nyala atau padam. Namun dalam Flowchart
switch tersebut berupa variabel yang diisi dengan dua kondisi yaitu 0 dan 1.
Melalui isi variabel tersebut dapat diketahui kondisi proses yang telah
dilakukan. Sehingga dapat dilakukan pengalihan proses tanpa melalui proses sebelumnya, sehingga dapat
mempersingkat alur proses
Contoh :
Sebuah perusahaan
ingin mengkomputerisasikan perhitungan pemakaian listrik. Dimana pelanggannya
mencakup seluruh wilayah di Jakarta.
Spesifikasi
prosesnya adalah :
Input diperoleh
melalui entry data oleh operator yang terdiri dari :
- wilayah : 1 numerik
- nomor langganan : 2 alphanumerik
- nama langganan : 20 alphanumerik
- jumlah pemakaian : 4 numerik
Data habis jika
operator mengentry nomor langganan = 0
Data sudah urut
per kode wilayah yang terdiri dari : Jakarta Barat, Jakarta Pusat, Jakarta
Selatan, Jakarta Utara, Jakarta Timur.
Jika wilayah
berubah, maka cetak total biaya per wilayah dan ganti halaman baru.
Pada akhir laporan
cetak total seluruh biaya yaitu jumlah total pemakaian listrik di semua
wilayah.
Berdasarkan contoh diatas,
dibuat analisa terlebih dahulu.
Analisa tersebut adalah :
- Dalam spesifikasi proses dijelaskan bahwa data sudah urut per kode wilayah. Jadi proses pembacaan data akan dilakukan terhadap sekelompok data dengan kode wilayah yang sama. Setelah data wilayah tersebut habis, maka proses pembacaan dilanjutkan dengan wilayah berikutnya. Bagaimanakah caranya agar diketahui perbedaan data yang baru dibaca dengan data sebelumnya?
- Bagaimanakah halnya jika data yang akan dibandingkan merupakan data awal proses ? karena hal ini tidak memungkinkan untuk membandingkan data tersebut dengan data sebelumnya. Dimana variabel penyimpanan masih dalam kondisi kosong atau belum diisi oleh data wilayah sebelumnya. Untuk itu perlu dipersiapkan satu variabel yang berfungsi sebagai variabel switch. Variabel ini pada awal proses diberi nol.
- Sehingga sebelum dilakukan proses pembandingan, lakukan terlebih dahulu pemeriksaan isi variabel ini. Jika isinya masih tetap nol berarti pembacaan data merupakan data awal. Untuk itu tidak perlu dilakukan pembandingan terhadap kode wilayah. Yang perlu dilakukan adalah menyimpan kode wilayah tersebut ke dalam variabel sementara, agar pada proses pembacaan data berikutnya dapat dilakukan pembandingan terhadap data ini.
Lalu akan
diterjemahkan dalam flowchart. Langkah-langkahnya adalah :
- Siapkan variabel-variabel yang diperlukan selama proses berlangsung.
Variabel-variabel tersebut
adalah :
SW
|
:
|
Variabel Swicth
|
WS
|
:
|
Untuk mempertahankan kode wilayah yang pertama
kali dibaca
|
TotWil
|
:
|
Untuk menghitung total pemakaian
per wilayah
|
TotSel
|
:
|
Untuk menghitung total pemakaian
seluruh wilayah
|
2.
Input data dan disimpan didalam variabel :
NO : Data Nomor Langganan
KW : Data Kode Wilayah
NM : Data Nama Pelanggan
JP : Data Jumlah pemakaian listrik tiap pelanggan
3.
Periksa isi variabel NO, bila NO=0,lakukan :
- Cetak Total Pemakaian Per Wilayah yang tersimpan didalam variabel TotWil
- Cetak nilai Total pemakaian seluruh wilayah yang tersimpan didalam variabel TotSel
- Proses selesai / berakhir
- Jika isi variabel No ternayat tidak sama dengan 0 berarti proses belum berakhir, lanjutkan ke langkah 4
4.
Periksa isi variabel SW. Langkah ini dilakukan untuk
mengetahui apakah proses yang dilakukan merupakan proses awal. Jika SW = 0,
berarti proses merupakan pembacaan data awal, maka lakukan :
Isi Variabel SW dengan
nilali = 1
Karena proses pembacaan
merupakan data awal, maka isi KW harus dipertahankan untuk perbandingan pada
data berikutnya. Oleh karena itu lanjutkan ke langkah 9 untuk mengisi ke
variabel penampungan yaitu WS.
Jika SW tidak sama dengan
o, berarti data yang dibaca bukan merupakan data pertama. Berarti variabel WS
telah diisi dengan kode wilayah sebelumnya. Untuk itu dapat dilakukan
pembandingan isi antara variabel Ws dengan KW
5. Bandingkan isi variabel KW dengan WS
Jika isi kedua variabel
tersebut sama, berarti data yang dibaca merupakan data wilayah yang sama dengan
data sebelumnya. Oleh karena itu lanjutkan proses ke langkah 11. Namun jika isi
KW tidak sama dengan WS berarti data tersebut merupakan data pemakaian listrik
untuk wilayah lainnya. Oleh karena itu harus harus dilakukan proses pencetakan
total pemakaian wilayah sebelumnya dan proses pencetakan judul. Judul tersebut
digunakan untuk wilayah baru sesuai dengan data wilayah yang dibaca. Lanjutkan
ke langkah 6.
6. Tambahkan nilai total pemakaian per wilayah ke nilai total
seluruh wilayah dengan menggunakan rumus :
TotSel = TotSel + TotWil
7. Cetak nilali total per wilayah
8. Kosongkan variabel TotWil. Karena variabel ini akan
digunakan untuk perhitungan nilai total pemakaian wilayah berikutnya. Karena
data yang dibaca merupakan wilayah baru maka isi variabel Ws juga harus diganti
/ diperbaharui.
9. Variabel WS diisi sesuai dengan isi KW yang dibaca
dengan menggunakan rumus berikut : WS = KW
10. Cetak
judul untuk setiap wilayah
11. Tambahkan
jumlah pemakaian tiap pelanggan ke dalam variabel total pemakaian per wilayah.
Rumus yang dipakai adalah : TotWil = TotWil + JP
12. Cetak
data-data tiap pelanggan
13. Kembali
ke langkah-langkah untuk membaca data berikutnya
Sumber :
http://susi22.staff.gunadarma.ac.id/Downloads/files/27501/TEKNIK+SWITCHING_bab7.doc.
http://erlina.staff.gunadarma.ac.id/Downloads/files/35801/13.doc.
http://erlina.staff.gunadarma.ac.id/Downloads/files/35801/13.doc.
Comments
Post a Comment