Loading documents preview...
PEMBUATAN LAPORAN Komputer → untuk membantu membuat laporan-laporan serta daftar-daftar untuk keperluan kelancaran administrasi perusahaan / kantor. Misal: Daftar Gaji, Laporan Keuangan, dsb. Data terdiri dari kumpulan simbol yang mempunyai arti tertentu. Unit paling kecil dari data → karakter Kumpulan dari karakter → Field atau variabel Field-field yang mempunyai hubungan satu sama lain dan menyatakan keadaan suatu individu → record Contoh: Record pegawai, terdiri atas: ☺ NIP ☺ NAMA PEGAWAI ☺ GOLONGAN
☺ TAHUN MASUK ☺ GAJI POKOK Record pasien, terdiri atas: ☺ No. Pasien ☺ Nama Pasien ☺ Tanggal Lahir ☺ Alamat ☺ Tanggal Periksa ☺ Jenis Penyakit Kumpulan dari record-record sejenis → Berkas (file) Contoh: file kepegawaian, file data pasien
004 003 002 001
ALI
ANA
Mulai 4A
ANI
BUDI 2C
3B
1980
1970
2000000
4A
1970
1990
5000000
2000000
1000000
49
Baca Record EO F
Selesai Catatan: dalam pemrosesan berkas, biasanya
Cetak Detail
ditambahkan record sebagai panji. Record itu disebut record END OF FILE atau EOF. Mencetak
daftar
(listing)
pegawai
dilengkapi JUDUL (heading)
NAMA XXX
DEPT.
DAFTAR PEGAWAI GOL. THN. MASUK
XXXX
XX
GAPOK
XXXX
XXXX
Mulai
? Judul Utama
? Judul Kolom
Baca Record
Buat nama
pelamar pertama.
materi.
EOF
Bila
Contoh: diagram alur untuk mencetak nama-
Selesai
yang lolos saringan tahap Dalam
tes
terdapat
2
jumlah nilai kedua materi tersebut Cetak Detail
50
lebih besar dari 70 pelamar dinyatakan lolos saringan tahap pertama. Bentuk laporan yang diinginkan terdiri dari nama pelamar, nilai tes dan keterangan.
Mulai Cetak Judul Laporan Cetak Judul Kolom
Baca Nama$, N1, N2
Nama=”XXX”
Selesai
J = (N1 + N2)/2
J > 70
Ket$= “L”
Ket$= “TL”
? Nama$, J, Ket$
51
TEHNIK SWITCHING Tehnik Switching merupakan cara memperpendek jalur proses yang memakai suatu indikator untuk mengantisipasi proses yang akan dilakukan selanjutnya. Indikator ini dimisalkan seperti switch pada tombol lampu yang dapat mengatur dua kondisi yaitu nyala dan padam. Dalam flowchart, switch merupakan 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 memalui proses sebelumnya atau mempersingkat alur proses. Contoh : Suatu perusahaan akan membuat laporan gaji pegawainya berdasarkan golongannya. Data yang dibaca terdiri dari nomor pegawai, nama pegawai, golongan dan gaji bersih. Data yang dibaca sudah urut per golongan yang terdiri dari : golongan 1, 2, 3,4. Jika golongan berubah maka cetak TOTAL GAJI per golongan dan ganti halaman baru serta NOMOR dimulai dari 1. Pada akhir laporan cetak TOTAL SELURUH GAJI yaitu jumlah total gaji seluruh golongan. Lay out yang diinginkan : DAFTAR GAJI PT ’ABC’ NO. 1 2 3
NOPEG 001 002 003
NAMA ANA ANI ALI
GOLONGAN GAJI 1 2500000 1 2000000 1 2500000 TOTAL GAJI 7000000
NAMA ADI ADE
GOLONGAN 2 2 TOTAL GAJI
DAFTAR GAJI PT ‘ABC’ NO. 1 2
NOPEG 004 005
TOTAL SELURUH GAJI
GAJI 3000000 2750000 5750000 12750000
Bentuk data yang akan dibaca :
start
TSGJ=0 SW=0 TGJ= 0 NO=0 GOL=G 1 SW=0 OL 1 BACA ?EOF TGJ ? TGJ, TSGJ TGJ= 0 2 TSGJ=TSGJ+TGJ TSGJ=TSGJ+TGJ SW=1 GOL1=GOL NP,NM$,GOL,GJ 2 NO=0
? NO, NP,52 NM$, GJ NO=NO+1 ? JUDUL 1 TGJ=TGJ+GJ END
SOAL : Sebuah perusahaan ingin mengkomputerisasikan perhitungan pemakaina listrik. Dimana pelanggannya mencakup seluruh wilayah di Jakarta.
53
•
Data diinput oleh operator terdiri dari kode wilayah, nomor pelanggan, nama pelanggan dan jumlah pemakaian.
•
Data habis jika operator memasukkan nomor pelanggan =0
•
Data sudah urut perkode wilayah, terdiri dari “Jakarta Barat”, “ Jakarta Timur”, “Jakarta Pusat”, “Jakarta Utara”, dan “Jakarta Selatan”,
•
Jika wilayah berubah, maka cetak total biaya per wilayah dan ganti halaman baru.
•
Pada akhir laporan cetak total seluruh biaya yaitu jumlah total pemakaian litrik di semua wilayah.
•
Lay out yang diinginkan :
Pemakaian Listrik Wilayah : Jakarta…………….. No. Pelanggan
Nama
Jumlah pemakaian
Xx
xxxxxxxxxxx
xxxxxxxxx
….
……………..
…………… Total Pemakaian :
Pemakaian Listrik Wilayah : Jakarta…………….. No. Pelanggan
Nama
Jumlah pemakaian
Xx
xxxxxxxxxxx
xxxxxxxxx
….
……………..
…………… Total Pemakaian :
Total Seluruh Pemakaian:
Start TotSel=0 TSGJ=0 SW=0 TotWil= TGJ= 0 0 NO=0 GOL=G Kw=Kw 1 SW=0 OL 1 1 BACA Input EOF ?No=0 No, TGJ TotWil TGJ= TotWil= 0 Kw, 0 NM$, JP SW=12 NP,NM$,GOL,GJ NO=0
2 2
? Totwil, TGJ, TSGJ Kw1=Kw GOL1=GOL TotSel
? NO, NP, NM$, NM$, 54 JP GJ NO=NO+1 ? JUDUL 1 TGJ=TGJ+GJ TotWil=Totwil+JP END
TotSel=TotSel+Tot wil
TotSel=TotSel+totwil
Contoh soal untuk proses penghitungan pemakaian listrik setiap wilayah dimodifikasi menjadi :
55
•
Data diinput oleh operator melalui keyboard. Data tersebut terdiri dari kode wilayah, kode pelanggan, nomor pelanggan, nama pelanggan, jumlah pemakaian.
•
Data habis jika operator memasukkan kode pelanggan =0
•
Kode pelanggan terdiri dari : Kode = 10 berarti tempat hiburan. Untuk itu dikenakan biaya tambahan sebesar 25% dari biaya pemakaian. Kode = 20 berarti tempat sosial. Untuk ini dikenakan potonngan sebesar 25% dari biaya pemakaian. Kode = 30 berarti rumah tangga.
•
Biaya per KWH dihitung menurut jumlah pemakaian dengan keentuan sbb:
•
Pemakaian (kwh)
biaya (kwh)
<100
500
100 – 500
750
> 500 •
1000
Biaya pemakaian untuk tiap-tiap pelanggan dihitung berdasarkan : Jumalh pemakaian * biaya per kwh + biaya tambahan –potongan
•
Data sudah urut perkode wilayah
•
Jika kode wilayah berbeda cetak total biaya perwilayah dan ganti halaman baru
•
Pada akhir laporan cetak total seluruh biaya
•
Lay out laporan :
Tagihan Listrik Wilayah : Jakarta…………….. No. Pelanggan
Nama
Ket
Jumlah pemakaian
Biaya
Pemakaian Xx
xxxxxxxxxxx
…
……………..
sosial
500
xxxx
……………
…….
Total biaya : Tagihan Listrik Wilayah : Jakarta……………..
56
No. Pelanggan
Nama
Ket
Jumlah pemakaian
Biaya
Pemakaian Xx
xxxxxxxxxxx
…
……………..
sosial
500
xxxx
……………
…….
Total biaya : Total Seluruh Biaya : MINOR DAN MAYOR TOTAL Minor Total adalah penjumlahan dari suatu komponen data menurut jenis kelompok / klasifikasinya. Mayor Total adalah penjumlahan dari suatu komponen data untuk seluruh data yang diolah. Misalkan kelompok data sbb: Kode klasifikasi A
Nomor barang
harga barang
001
1000
002
2000
003
2500
TOTAL KLASIFIKASI A : 5500 Kode klasifikasi
Nomor barang 008
B
harga barang 1500
009
3500
011
5000
TOTAL KLASIFIKASI B : 10000 TOTAL SELURUH
: 15500
Jadi untuk setiap perubahan kode klasifikasi, maka setiap harga barang di totalkan. Analisa Pendahuluan : 1. Kita perlu melakukan penjumlahan seluruh harga barang ( sama dengan penjumlahan pada grand / mayor total ). 2. Lakukan juga penjumlah total harga barang perkode klasifikasi maka :
57
Minor total
cetak total untuk kode yang sama. Total akan
dicetak bila kode berubah. Kita perlu mengadakan pengecekan kode klasifikasi untuk setiap data yang dibaca dengan kode dari data sebelumnya, karena itu diperlukan variabel penampung KL & KK untuk kode klasifikasi. 3. Tempat kode klasifikasi ini dapt ditempati pertama kali oleh kode klasifikasi data pertama, disamping harga barang dari data pertama dijumlahkan dengan isi dari total harga barang, untuk minor total dan mayor total. 4. Bila masih ada data, lakukan pengecekan kode, bila kode beda, maka lakukan: * Isi dari total harga barang dicetak (minor total). * Isi THB di kosongkan. * Isi dari kode klasifikasi dari data terakhir, dikeluarkan , diganti dengan yang baru. * Proses selanjutnya seperti data semula ( untuk kode klasifikasi yang baru). * Kode sama ,proses dilanjutkan sesuai data dengan kode yang sama.
5. Demikian seterusnya s/d data habis. Bila data habis baru cetak minor total terakhir dan mayor totalnya
58
OPERASI FILE RANDOM I. PENYISIPAN RECORD •
Akses pada file random dapat dilakukan secara acak. Jadi akses data tidak dilakukan dengan membaca data satu per satu mulai dari record pertaa tapi dilakukan dengan nomor record,
•
Pencarian record data dapat dilakukan dengan pindah dari record terakhir ke reocrd awal atau record lainnya.
Flowchart proses penyimpanan data ke file
start 2 Read Mast1.dat NIM1,NM$, AL1$
/*
END
N=0 3 N= N + 1
Read Mast2.DTA Record ke-N NIM2,NM2$,AL2$
1
59
1
/*
NIMO=NIM 1 NMO = NM 1 ALO = AL 1
/*
Write MAST.DTA NIMO, NMO, ALO
2
3 System flowchar penyisipan record
MAST 1.DTA
MAST2. DTA
Data di MAST1.DTA di tambahkan ke MAST2.DTA dengan ketentuan , jika data MAST1.DTA sudah ada di MAST2.DT maka data tersebut diabaikan atau tidak di simpan ke MAST2..DTA
Akses terhadap file random dapat dilakukan dengan mengunakan nomor record, sehingga dari satu record dapat pindah ke record lainnya tergantung dari nomor record tersebut.
60
II. PENGHAPUSAN RECORD
•
Penghapusan dilakukan dengan membentuk file baru. Dimana file baru ini merupakan file berisiskan record dari file lama.
•
Namun record dari file lama tersebut hanya terbatas pada record yang tidak sama dengan data yang akan dihapus.
•
Sedangkan record yang sama dengan data yang akan dihapus diabaikan
•
System flowcart penghapusan record
MASTER.DTA NEW. DTA TRANS. DTA •
Record yang dihapus pada file MASTER.DTA ditentukan berdasarkan data yang terdapat di file TRANS. DTA
•
Hasil penghapusan record disimpan di dalam file NEW.DTA . Jadi isi TRANS. DTA merupakan isi MASTER.DTA setelah mengalami penghapusan record.
Struktur record file MASTER.DTA terdiri dari field : •
Nomor induk mahasiswa
•
Nama mahasiswa
•
Alamat mahasiswa
Struktur file TRANS.DTA hanya terdiri dari field Nomor Induk Mahasiswa . Field ini menunjukkan record di MASTER.DTA yang akan di hapus.
61
Flowchart penghapusan record
start N= 0 2 N= N+1 Read MASTER.DTA RECORD KE N NIM2, NM2, AL2
/*
END
M=0 3 M= M + 1 READ TRANS .DTA RECORD KE – M NIM 2
/*
3
NIM2= NIM 1
NIMO = NIM1 NMO = NM1 ALO= AL1 Write New. DTA Record ke – M NIMO, NMO, ALO
62
2
III. PERUBAHAN ISI RECORD •
Perubahan record dilakukan dengan mencari record yang akan diubah lalu mengadakan perubahan terhadap isinya.
•
Selanjutnya record tersebut disimpan kembali tanpa mengubah posisi record.
•
Proses pencarian dilakukan dengan membaca record satu persatu mulai dari awal record sampai record terakhir.
•
Setiap record yang dibaca dibandingkan melalui field yang berfungsi sebagai key.
•
System flowchart perubahan record
TRANS . DTA •
INDUK.DTA
File INDUK.DTA dan TRANS.DTA terdiri dari field Nomor Induk Mahasiswa, nama dan alamat
•
Data di INDUK.DTA akan diubah berdasarkan data di TRANS. DTA. Field key yang dipakai adalah nomor induk mahasiswa.
Flowchart perubahan record
1
mulai -
N=0
/*
selesai
3 N=N+1
M=0 4 M = M +1
Read TRANS.DTA Record ke – N NIM1, NM1, AL 1
1
Read INDUK.DTA Record ke M NIM2, NM2, AL2
63
2 2
/*
NIM2= NIM 1
3
4
NIM2=NIM1 AL2 = AL1
Write INDUK.DTA RECORD KE – M NIM2,NM2,AL2
3
64
OPERASI FILE SEQUENTIAL Operasi terhadap file yang diorganisir secara sequential hanya dapat dilakukan secara berurutan.
I. PENYISIPAN RECORD / PENAMBAHAN RECORD BARU Untuk penambahan record ke dalam suatu file, maka posisi record
terakhir
harus diketahui, karena record yang baru diletakan pada posisi setelah record terakhir. Flowchart proses penyimpanan data ke file
start Input NPM, NM$, NILAI
NPM= 0
END
NPMO=NPM NM$O=NM$ NILAIO=NILAI
WRITE NPMO,NMO,NILAIO
65
Flowchart proses penambahan record baru.
start
Read Data NM,UM,ALM
/*
INPUT NM1,UM1, ALM1
NMO= NM1 UMO=UM1 ALMO=ALM1 WRITE NMO,UMO,ALMO
END •
Jika yang akan dilakukan adalah menyisipkan recor yang sudah ada, maka diperlukan satu file baru untuk menampung hasil akhir dari penyisipan.
•
Untuk penyisipan record, posisi yang akan ditempati oleh record baru harus diketahui dengan jelas
•
Posisi ini dpat diketahui dengan cara memeriksa salah satu isi dari suatu record
•
System flowchart dibawah memperlihatkan bahwa data yang akan disisipkan diinput melelui keyboard
•
Sedang file yang akan disisipkan data diambil dari FILE01 dan file baru hasil penyisipan adalah FILE 02
66
FILE 02
FILE 01
II. PENGHAPUSAN RECORD •
Penghapusan dilakukan dengan cara membaca record satu persatu lalu menuliskan kembali ke file baru.
•
Namun dalam proses pembacaan tersebut dilakukan pemeriksaan terhadap setiap record.
•
Jika pada waktu pembacaan record ditemukan reocrd yang akan dihapus maka record tersebut diabaikan atau tidak ditulis ke file baru.
•
Penghapusan record dilakukan terhadap file FILE01. Record yang akan dihapus diinput melalui keyboard. Hasil penghapusan record disimpan di dalam file FILE02.
System flowchart proses penghapusan record
FILE 02
FILE 01
67
Flowchart penghapusan record START
INPUT NMH
1 READ FILE 01 NM1, UM1, AKM1
/*
NM1= NMH
END
1
NMO=NM1 UMO=UM1 ALMO=ALM1
WRITE FILE02 NMO,UMO,ALMO
1
68
III. PERUBAHAN ISI RECORD •
Perubahan record merupakan modifikasi terhadap isi record dari suatu file.
•
Record yang akan dimodifikasi dicari dengan memeriksa isi salah satu field.
•
Untuk mengadakan perubahan pada record ke – 3 maka proses pembacaan record dilakukan mulai dari record pertama sampai pada record yang dituju.
Flowchart perubahan record
start
Input NAMA$ 1 Baca FILE02 NPM2,NM2$, NILAI
/*
END 2
NM2= NAMA
1
INPUT NPMB,NMB$, NILAIB
NPMO=NPMB NMO$=NMB$ NILAIO=NILAIB
WRITE FILE02 NPMO,NMO$,NILAIO
2
69
SOAL FILE SEQUENTIAL 1.
Buat flowchart untuk menyimpan data ke dalam file.
Spesifikasi data tersebut adalah : nomor induk pegawai, nama pegawai, alamat dan gaji pokok. Proses input data berakhir jika operator mengisi 0 untuk nomor induk pegawai. 2.
Buat flowchart dengan permasalahan soal no.1 namun data
pegawai yang disimpan ke file hanya pegawai dengan gaji pokok > 200. Sebaliknya, untuk gaji pokoklebih kecil atau sama dengan 200 dicetak melalui printer. 3.
Perhatikan sistem flowchart sebagai berikut :
Mhsnew.dat
Mhs.dat File mhs.dat terdiri dari field : nomor induk mahasiswa, nama, alamat, dan ipk. Buat flowchart untuk proses penghapusan record filemhs.dat. Spesifikasi proses adalah sebagai berikut : -
Record yang dihapus ditentukan berdasarkan nomor induk
mahasiswa ( NIM ) yang diinput melalui keyboard -
Data di dalam file.mhs.dat telah diurutkan berdasarkan
NIM -
Hasil proses penghapusan pada file mhs.dat disimpan ke
file mhsnew.dat -
Proses selesai jika operator mengetik 0 untuk nomor induk
mahasiswa.
70
71
PENERAPAN KONSEP TABEL DALAM MASALAH I. Argumen dan Fungsi Tabel merupakan data pembantu dalam pengolahan data. Misal dalam suatu lembar dokumen terdapat data pegawai sbb : NIP
Gapok
Tunjangan
10200
500.000
120.000
10201 10202 10203 10204 10205
300.000 350.000 400.000 450.000 500.000
100.000 120.000 230.000 100.000 50.000
Dari data pegawai tersebut tidak dapat diketahui nama setiap pegawai. Untuk itu dapat dibuat suatu tabel yang berisi khusus untuk nama pagawai seperti dibawah ini : NIP 10200 10201 10202 10203 10204 10205
NAMA Amat Bondan Amir Dwi Tika Toni
Item NIP merupakan item yang dipakai sebagai acuan untuk mencari data nama pegawai di dalam tabel. Item ini berfungsi sebagai kontrol field yang sering disebut ARGUMEN. Sedang item NAMA merupakan FUNCTION dari tabel tersebut.
II. Penggunaan Storage untuk Penyimpanan Tabel
•
Data di dalam media penyimpanan seperti disk, kartu, dokumen dll yang berfungsi sebagai tabel disebut External Tabel.
72
•
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.
STAR T I= 0 INPUT NIP,N M
NIP = 0
YA
END
TIDAK
I=I+1
NIPTAB(I) = NIP NMTAB(I) = NM
•
Setiap data yang dibaca dari external tabel disimpan di dalam NIPTAB(I) dan NMTAB(I). Variabel ini merupakan variabel berindeks atau variabel array.
73
•
Variabel array merupakan suatu variabel dengan beberapa tempat penyimpanan.
•
Gambar dibawah memperlihatkan ilustrasi variabel array NIPTAB.
NIPTAB
nama variabel 1
2
3
4
5
6
.....
N
indeks
Penyimpanan ke dalam variabel array NIPTAB dilakukan berdasarkan nilai indeksnya. Pada flowchart di atas nilai indeks ditentukan melalui variabel I.
III. Proses Pencarian (Searching) •
Proses pencarian di dalam internal tabel dilakukan dengan berpatokan pada nilai indeksnya.
•
Misal untuk mencari nama pegawai dengan NIP = 10203 dapat digambarkan melalui flowchart berikut :
STAR T
NO = 10203 I=0 I=I+1
YA
NO= NIPTAB( IV. Pengurutan dengan Eksternal Tabel I)
PRINT NMTAB( I)
EN D
74
IV.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 NIP, maka field kuncinya adalah field yang berisi NIP. Secara garis besar, proses pengurutan dengan eksternal tabel terdiri dari langkahlangkah o
Bentuk file indeks yang hanya berisi field kunci.
o
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
o
sesuai pada file indeks. IV.2. Proses Pembentukan File Indeks File PEG.DTA NIP 93004 93001 93003 93006 93002 93005 /*
NAMA Amat Badu Dono Rina Tuti Kiki
ALAMAT Jl. P Jl. G Jl. H Jl. Z Jl. W Jl. Q
75
Jika data di file PEG.DTA ingin diurutkan berdasarkan NIP, maka harus dibentuk file indeks yang hanya berisi field NIP. Proses pembentukan file indeks ini dapat digambarkan melalui flowchart :
START
N=0
N=N+1 READ PEG.DTA Record ke-N NIP, NAMA, ALM YA
/*
END TIDAK
ONIP=NIP
WRITE INDEKS.DTA RECORD KE-N ONIP
55
Berdasarkan flowchart diatas, terbentuk file indeks yaitu INDEKS.DTA. NIP 93004 93001 93003 93006 93002 93005 /*
record pertama
56
PENGURUTAN BILANGAN DENGAN METODE STRAIGHT SELECTION
I. Proses Pengurutan •
metode ini dikatakan kebalikan dari metode Bubble sort. Pencarian dimulai
•
dengan bilangan terkecil.
•
Bilangan terkecil ini lalu diletakan di elemen atau urutan pertama, demikian seterusnya sampai dihasilkan urutan bilangan dari kecil ke besar.
•
•
Contoh Array :
20 1
12 2
35 3
11 4
17 5
9 6
58 7
23 8
12 1
20 2
35 3
11 4
17 5
9 6
58 7
23 8
11 1
20 2
35 3
12 4
17 5
9 6
58 7
23 8
9 1
20 2
35 3
12 4
17 5
9 6
58 7
23 8
Proses diatas hanya membandingkan elemen pertama dengan semua elemen array. Sehingga elemen pertama terisi bilangan terkecil.
•
Ulangi proses diatas untuk membandingkan elemen ke –2 dengan elemen lainnya.
•
Kini isi elemen pertama dan ke – 2 sudah urut dari bilangan kecil kebesar 9 1
12 2
35 3
20 4
17 5
11 6
58 7
23 8
9 1
11 2
35 3
20 4
17 5
12 6
58 7
23 8
57
•
Ulangi proses di atas untuk membandingkan elemen ke-3 dengan elemen lainnya.
•
Setelah itu elemen ke-4 dan seterusnya sampai elemen terakhir
•
Sehingga hasil akhirnya adalah 9 1
11 2
12 3
17 4
20 5
23 6
35 7
58 8
58
IMPLEMENTASI DALAM BENTUK FLOWCHART
1
START
I=I+1
I =0 N=0
J=I+1 INPUT BIL YA
BIL = 0
ARRBIL( I) < ARRBIL( J)
1
TIDAK
N = N+1
TIDAK TEMP = ARRBIL(1) ARRBIL(I) = ARRBIL(J) ARRBIL(J) = TEMP
ARRBIL(N) = BIL
1
YA
TIDAK
I=N1 YA
I=I+1
I=0
YA
N=J TIDAK
J=J+1
PRINT ARRBILL(I ) I=N 58
TIDAK
END
59
PENGURUTAN BILANGAN DENGAN METODE BUBBLE SORT
Proses Pengurutan •
Bubble Sort adalah nama yang diberikan pada prosedur untuk mengatur
sekelompok bilangan dengan urutan dari kecil ke besar. •
Untuk mengurutkan bilangan diperlukan variabel array yang digunakan untuk
menampung semua bilangan yang akan diurutkan. •
Proses pengurutan dilakukan dengan membandingkan semua elemen array
satu persatu.
Contoh : 20
12
35
11
17
9
58
23
Dalam metode bubble sort, pengurutan demulai dengan membandingkan elemen pertama untuk mendapatkan angka terbesar. Lalu angka tersebut ditempatkan pada elemen terakhir.
60
61
IMPLEMENTASI DALAM BENTUK FLOWCHART
1
START
J=J+1 I = 0 J = 0 N=0
2 I=I+1
INPUT BIL BILLAR(I) < BILLAR(I+ 1)
YA YA
BIL= 0
1 TIDAK
TEMP = BILLAR(I) BILLAR(I) = BILLAR(I+1) BILLAR = TEMP
N=N+1
BILLAR(N) = BIL I=NJ
PRINT BILLAR( I) I= N
END
I=I+1
I=0
YA
2
J = N -YA 1
I=0
1
27
TIDAK TIDAK Bubble Sort tidak lain adalah pengulangan prosedur hingga bilangan – bilangan yang ada tersusun menurut urutan dari yang kecil ke yang besar. Contoh Buble Sort 6
5
8
3
Pertama : 6
5
8
3
5
6
8
3
5
6
8
3
5
6
3
8
Pada akhir proses pertama ini, bilangan yang terbesar menempati tempat yang sesuai. Kedua : 5
6
3
8
5
6
3
8
5
3
6
8
5
3
6
8
Pada akhir proses kedua ini, bilangan terbesar kedua menempatkan tempat yang sesuai. Ketiga : 5
3
6
8
3
5
6
8
3
5
6
8
3
5
6
8
Bila proses ini dilanjutkan, tidak ada pertukaran tempat lagi bagi bilangan – bilangan tersebut, sebab bilangan tersebut telah selesai disusun.
TUGAS :
28
1. Untuk yang NPM – nya ganjil jalankan flowchart Pengurutan Bilangan dengan Metode Bubble Sort untuk data : 17
99
8
69
45
36
21
2. Untuk yang NPM – nya genap jalankan flowchart Pengurutan Bilangan dengan Metode Buble Sort untuk data : 54
70
81
3
11
48
90
29