Handouts Oleh. Rachmat Budi Basuki S.Kom LOGIKA ALGORITMA
MULAI BAGIAN X(KESEPULUH)
PENGOLAHAN DATA FILE Panjang Record (A) Nomor Index Record (B) Fields / Kolom (C) 10 Karakter20 Karakter2 Karakter10 Karakter NimNamaProgramJurusan DaniS1TI IrwanD3TI HusainD2TI AnwarD1TI AntokD3Grafis ”File digunakan sebagai tempat menyimpan data/informasi” Didalam pengolahan data pada File menggunakan metode File Random “ I L U S T R A S I F I L E D A T A “ KETERANGAN : (C) = = 42 PANJANG SETIAP RECORD (A) = JUMLAH PANJANG RECORD DATA (B) = (A) / (C) YAITU INDEX / NOMOR RECORD / BANYAKNYA RECORD File Random, 1. Menempatkan data dalam bentuk record dengan panjang tertentu. 2. Sistem pengolahan ini suatu record data dapat langsung dibaca ataupun ditulis tanpa harus memproses record sebelumnya.
PENGOLAHAN DATA FILE KETERANGAN : Dim > “Sebagai definisi / deklarasi file handle” for Random > “Metode file Acak” Len > “Fungsi untuk menghitung panjang karakter atau byte” #1 > “alias dari file yang telah dibuka” LOF > “Fungsi untuk menghitung panjang total semua record data” “Siswa.Dat” > “Nama pisik file pada media simpanan luar seperti hardisk atau disket” RecNo > “Perubah yang mewakili index data” Fmhs > “Perubah yang mewakili record data” Struktur File Random, I.Tipe data record : definisi fields / kolom berserta panjangnya. Type Tmhs Nim string*10 Nama string*20 Program string*2 Jurusanstring*10 II.File handle : untuk menyimpan input data dalam bentuk record. Dim Fmhs as Tmhs III.Membuat dan membuka file Acak Open ”Siswa.DAT” for Random as #1 Len = Len(Fmhs) IV.Mendapatkan jumlah record pada file Acak RecNo = LOF(1) / Len(Fmhs) V.Menulis data pada file Put #1, RecNo, Fmhs VI.Membaca data dari file Get #1, RecNo, Fmhs VII.Menutup file Acak Close #1
PENGOLAHAN DATA FILE Tipe Data Record, I.INTEGER ”Tipe data numerik bilangan bulat 16 bit” / Ukuran = 2 byte – II.LONG ”Tipe data numerik bilangan bulat 32 bit” / Ukuran = 2 byte – III.SINGLE ”Tipe data numerik bilangan desimal single-precision” / Ukuran = 4 byte 1.5 x 10^– x 10^38 IV.DOUBLE ”Tipe data numerik bilangan desimal double-precision” / Ukuran = 8 byte 5.0 x 10^– x 10^308 V.STRING*n ”Tipe data karakter” / Ukuran = n Karakter Keterangan : Byte adalah suatu unit ukuran dari bentuk simpanan informasi. Bit adalah suatu digit biner dengan nilai yaitu 0 atau 1. Bit merupakan suatu unit dasar dari bentuk simpanan informasi.
PENGOLAHAN DATA FILE Operasi-operasi didalam File Random, I.Isi / Memasukan data pada setiap record didalam FileIsi / Memasukan data pada setiap record didalam File II.Update / Koreksi dataUpdate / Koreksi data III.Hapus DataHapus Data IV.Pengurutan Data V.Menampilkan Data dalam bentuk Laporan PERLU DIKETAHUI !!! ”Record data didalam File akan berubah jika salah satu operasi diatas dieksekusi / dikerjakan”. ”Hasil dari perubahan record data didalam File dapat dibaca kembali pada saat setiap kali akan membuka File”. ”Hal ini dimungkinkan karena record data telah tersimpan pada media simpanan luar seperti hardisk atau disket”.
PENGOLAHAN DATA FILE Algoritma dengan Pseudocode ”Isi / Memasukan data pada setiap record didalam File” Pseudocode, Type Tmhs Nim string*10 Namastring*20 Program string*2 Jurusan string*10 Dim Fmhs as Tmhs Open “Siswa.DAT” for Random as #1 Len = Len (Fmhs) RecNo LOF(1) / Len (Fmhs) Baca Fmhs.Nim Baca Fmhs.Nama Baca Fmhs.Program Baca Fmhs.Jurusan RecNo RecNo + 1 Put #1, RecNo, Fmhs Cetak “Data telah tersimpan” Close #1 KEMBALI
PENGOLAHAN DATA FILE Algoritma dengan Pseudocode ”Update / Koreksi Data” Pseudocode, Type Tmhs Nim string*10 Namastring*20 Program string*2 Jurusan string*10 Dim Fmhs as Tmhs Dim Cmhs as Tmhs Open “Siswa.DAT” for Random as #1 Len = Len (Fmhs) RecTotal LOF(1) / Len (Fmhs) Baca Fmhs.Nim RecNo 1 Ketemu “T” Do While Ketemu = “T” And RecNo <= RecTotal Get #1, RecNo, Cmhs If Fmhs.Nim = Cmhs.Nim Then Ketemu “Y” Else RecNo RecNo + 1 End If Loop If Ketemu = “Y” Then Cetak “Data ditemukan, lanjut Koreksi [y/t]?” Baca Lanjut If Lanjut = “Y” Then Baca Fmhs.Nama Baca Fmhs.Program Baca Fmhs.Jurusan Put #1, RecNo, Fmhs Cetak “Koreksi Tersimpan” Else Cetak “Koreksi Batal” End If Else Cetak “Data tidak ditemukan, Koreksi Batal” End If Close #1 KEMBALI
PENGOLAHAN DATA FILE Algoritma dengan Pseudocode ”Hapus Data” Pseudocode, Type Tmhs Nim string*10 Namastring*20 Program string*2 Jurusan string*10 Dim Fmhs as Tmhs Dim Cmhs as Tmhs Open “Siswa.DAT” for Random as #1 Len = Len (Fmhs) RecTotal LOF(1) / Len (Fmhs) Baca Fmhs.Nim RecNo 1 Ketemu “T” Do While Ketemu = “T” And RecNo <= RecTotal Get #1, RecNo, Cmhs If Fmhs.Nim = Cmhs.Nim Then Ketemu “Y” Else RecNo RecNo + 1 End If Loop If Ketemu = “Y” Then Cetak “Data ditemukan, lanjut Hapus [y/t]?” Baca Lanjut If Lanjut = “Y” Then Fmhs.Nim = “” Fmhs.Nama = “” Fmhs.Program = “” Fmhs.Jurusan = “” Put #1, RecNo, Fmhs Cetak “Hapus Sukses” Else Cetak “Koreksi Batal” End If Else Cetak “Data tidak ditemukan, Hapus Batal” End If Close #1 KEMBALI
AKHIR BAGIAN X(KESEPULUH)