Lompat ke konten Lompat ke sidebar Lompat ke footer

Pemrosesan Arsip Beruntun

 

Arsip Beruntun (Sequential File)

  • Perbandingan media penyimpanan data pada memori utama dengan memori sekunder
  • Arsip atau File adalah informasi yang tersimpan dalam memori sekunder
  • Rekaman atau Record adalah informasi yang direkam dalam arsip
  • Metode Pengorganisasian arsil sequential dengan random (direct)

Arsip Beruntun adalah sekumpulan rekaman bertipe sama yang diakses secara berurutan dari rekaman pertama sampai dengan rekaman terakhir.  Struktur arsip beruntun hampir sama dengan struktur larik (array), perbedaannya elemen larik didefinisikan dalam memori sedangkan arsip didefinisikan dalam media penyimpanan sekunder.  Perbedaan juga pada cara mengakses, jika larik bisa menggunakan indeks, di arsip beruntun rekaman harus dibaca dari awal rekaman dan satu arah dari rekaman pertama sampai akhir.  Selain itu jika pada larik kita mengakhir pemrosesan bilamana pencatat indeks sudah melebihi larik N, pada arsip beruntun pembacaan rekaman berakhir jika sudah sampai pada tanda (mark) yang penandaan akhir arsip (end of life).

Tipe rekaman dapat berupa tipe dasar (integer, real, char, boolean, string) atau tipe terstruktur (record).  Setiap rekaman di dalam arsip beruntun harus bertipe sama, baik dari tipe dasar maupun tipe terstruktur.


Deklarasi Arsip dalam Algoritma


DEKLARASI:
      type nama tipe arsip : File of tipe rekaman { tipe bentukan}
      arsip : nama tipe arsip

Arsip Bil yang berisi sekumpulan bilangan bulat
DEKLARASI
         Bil: File of Integer

Arsip Mhs yang berisi data mahasiswa (NPM, Nama, dan IPK)
DEKLARASI
         { tipe rekaman }        
         type DataMhs :record <NPM : integer, Nama : string, IPK: real>
         { arsip }       
         Mhs : File of DataMhs



Perintah Dasar


OPEN
Sintaks : OPEN (input NamaArsip, kode)
Contoh: OPEN(MHS, 1)
              OPEN(KAR,2)

FREAD
Sintaks : FREAD (input NamaArsip,<NamaRekaman>)
Contoh : FREAD (MHS, RekMhs)
               FREAD (MHS, ch)

FWRITE
Sintaks: FWRITE (input/output NamaArsip, <NamaRek>)
Contoh: FWRITE (MHS, <31119002, 'Brandon', 3.50>)
              FWRITE(KAR, 's')

CLOSE
Sintaks: CLOSE (input NamaArsip)
Contoh: CLOSE(MHS)
              CLOSE(KAR)

MARK
Sintaks: MARK (<NamaRekaman>) -> boolean


Membuat Arsip Beruntun


BUAT_ARSIP_MAHASISWA
KAMUS
      Type DataMhs : record <NPM:integer, Nama:string, IPK:real>
      Type ArsipMhs : SeqFile of DataMhs
      MHS : ArsipMhs
      RekMhs : DataMhs

ALGORITMA
      OPEN (MHS,2)
      Input (RekMhs, NPM)
      While (RekMhs, NPM <> 9999999) do
               Input (RekMhs, Nama)
               Input (RekMhs, IPK)
               FWRITE (MHS, RekMhs)
               Input(RekMhs, NPM)
      endwhile
      FWRITE (MHS, <9999999, 'xxx', 9.99)
      CLOSE(MHS)


BACA_ARSIP_BERUNTUN
KAMUS
      Type DataMhs : record <NPM:integer, Nama:string, IPK:real>
      Type ArsipMhs : SeqFile of DataMhs
      MHS : ArsipMhs
      RekMhs : DataMhs

      function MARK (input lokalRekMhs: DataMhs) -> boolean

ALGORITMA
      OPEN (MHS,1)
      FREAD(MHS, RekMhs)
      While Not MARK (RekMHS) do
               output (RekMhs, NPM)
               output (RekMhs, Nama)
               output (RekMhs, IPK)
               FREAD (MHS, RekMhs)
       endwhile
      CLOSE(MHS)



Posting Komentar untuk "Pemrosesan Arsip Beruntun"