Anda di halaman 1dari 21

ALGORITMA UNTUK

MASALAH BISNIS
PERTEMUAN 9
POKOK BAHASAN

1. Struktur Program
2. Struktur Chart
3. Membuat Laporan Dengan Page Break
4. Contoh Algoritma Penyelesaian
STRUKTUR PROGRAM
Secara umum program yang dilakukan untuk memproses
data yang dibaca dari file dapat digambarkan sbb:
Sub Proses_record
Proses_inisialisasi
Baca record pertama
Do while not EOF
process_record_ini
Baca next record
ENDDO
Proses_final
END
STRUKTUR CHART
Algoritma di atas digambarkan dengan struktur chart
berikut:
• Tiga modul di atas dapat berisi statement yang
dibutuhkan untuk memproses data yang dibaca dari file
• Main program dari struktur chart sudah ada sehingga
dapat dikembangkan proses dari ketiga modul tersebut
MEMBUAT LAPORAN DENGAN
PAGE BREAK
 Suatu laporan membutuhkan:
– Judul
– Baris judul
– Kolom judul
– Detail
– Total
 Di samping itu suatu halaman laporan hanya
menampung beberapa baris record, sehingga harus
mengatur pemindahan ke halaman baru
 Untuk itu dibutuhkan sebuah control break untuk
memeriksa kapan harus pindah ke halaman baru (page
break)
MEMBUAT LAPORAN DENGAN
PAGE BREAK (lanjutan)
1. Single-Level Control Break
2. Multiple-Level Control Break
CONTOH LAPORAN MULTI-
LEVEL BREAK
1. SINGLE-LEVEL BREAK
 Single-Level Control Break adalah pemberhentian dalam
logika program (berhenti atau mengulang untuk
mencetak judul baru) berdasarkan nilai sebuah variabel.
Contoh : no departemen.
HIERARCHY CHART SINGLE-
LEVEL BREAK
Produce_
Single_level
control_break

Initialize Print_page Process Print_ Print_


variable _headings _this_ control_ report_
_fields records total_line total

Print_ Accumulate_ Reset_


detail_line control_total control_
total
2. MULTIPLE-LEVEL BREAK
 Multiple-Level Control Break adalah pemberhentian
dalam logika program (berhenti atau mengulang untuk
mencetak judul baru) berdasarkan beberapa nilai
variabel. Contoh : total penjualan per sales dan total
penjualan per departemen
HIERARCHY CHART MULTIPLE-
LEVEL BREAK
Proceduce_
multiple_level
control_break

Initialize Print_page Process Print_minor Print_major Print_


variable _headings _this_ _control_ _control_ report_
_fields records total total total

Print_ Accumulate_ Reset_ Reset_


detail_line control minor_control major_control
_ total _ total
CONTOH KASUS
HIERARCHY CHART
ALGORITMA PEMECAHAN
Laporan_Penyewaan
Inisialisasi
Cetak_Judul
Baca Record Pertama
DO WHILE NOT EOF
If baris > 30 THEN
Cetak_Judul
Baris = 0
ENDIF
Process_Record
Baca Record Selanjutnya
ENDDO
Cetak_Total_Report
END
SUBORDINATE MODUL
1. Inisialisasi
Buka File
Total = 0
Hal = 0
Baris = 0
END
2. Cetak_Judul
Hal = hal + 1
Cetak “PT. Semesta Makmur Abadi ”
Cetak “Jalan Bahari Biru ”
Cetak “Jakarta”
Cetak “Laporan Gaji ”
Cetak “Tanggal Cetak “, date(), “Hal =”, hal
Cetak “No. NIP Nama Target Realisasi Komisi Gaji Pokok Total Gaji ”
END
SUBORDINATE MODUL (lanjutan)
3. Process_Record
komisi = (realisasi – target ) * 10000
Total_gaji = komisi + gaji_pokok
Cetak_Detail
accumulate_total
END
5. Cetak_Detail
Baris = baris +1
Cetak baris, NIP, Nama, Target, Realisasi, Komisi. Gaji_Pokok,
Total_gaji
END
SUBORDINATE MODUL (lanjutan)
6. Accumulate_total
Total = total + total_gaji
END
7. Cetak_total_Report
Cetak “Total gaji Sales”, total
Tutup File
END
TUGAS 6
Buatlah program lengkap dengan pseudocode dan
flowchart untuk menampilkan daftar gaji gaji karyawan,
dengan ketentuan sebagai berikut :
Kode Jabatan Gaji Kode Status Tunjangan
Jabatan Pokok Status
M Menikah 200.000
1 Administrasi 800.000
S Single 100.000
M Menikah 250.000
2 Operasional 850.000
S Single 150.000
TUGAS 6 (lanjutan)
Jumlah Karyawan = .... <diinput>

Bulan = ......... <diinput>

Input Data Karyawan

Data Karyawan ke = <counter jumlah>

NIP karyawan = ......... <diinput>

Nama Karyawan = ......... <diinput>

Kode Jabatan [1/2] = .... <diinput>

Kode Status [M/S] = .... <diinput>


TUGAS 6 (lanjutan)
Ketentuan :
 Banyak data karyawan yang diinput harus sama dengan
ketentuan jumlah karyawan yang sudah diberikan pada
awal input data.
 Total didapat dari pertambahan gaji pokok dengan
tunjangan.
 Setelah selesai diinput maka akan menghasilkan
keluaran dalam bentuk tabel yang jumlahnya sama
sesuai dengan jumlah data yang diinput.
TUGAS 6 (lanjutan)
Catatan Tugas :
 Tugas dibuat pada kertas folio bergaris dengan
menggunakan bolpoint.
 Tugas dikumpulkan pada saat pertemuan 10. Bagi
mahasiswa yang tidak mengumpulkan tugas maka tidak
mendapat nilai tugas 6 (tidak ada sistem susulan).

Anda mungkin juga menyukai