Modul 8 File Sekuensial Deskripsi Umum tt\,:-,:, \i',i, # * Dalam pascal, kita menggunakan file agar hasil program setelah di-run tersimpan secara perrrtq4en,-{1 dalam harddisk dan bukan tersimpan sementara dan hilang ketika program ditutup File biasanya digunakan nitu pin arsiparsip yang akan digunakan kembali ooerasi-operasi Dasar pada File '':i,r: ;$ "ii',:,,,,,,,,,r, "', 1 Assign(iabelArsip,NamaArsip) l,t o,i;,'i- Perintah ini iligunakan untuk menghubungkan file fisik dengan vagiifejnyi,r,,,: 2 Rewrite(iabelArsip) 3 4 6 TUJUAN PRAKTKUM: L Praktikan memahami bentuk-bentuk file dalam algoritma 2- Praktikan memahami bentuk penyimpanan data dengan menggunakan file text dan file bertipe 3 Praktikan dapat membedakan antara file teks dan file bertipe 4' Dapat membuka file, menutup file, menuliskan data ke file, menampilkan data baik dalam file text maupun dalam file bertipe dalam a maupun dalam bahasa pascal Perintah ini digunakan untuk membuat dan membuka Rte gffifii+le ",:ri Reset(iabelAsip) - 9 Perintah ini digunakan untuk memindahkan pointeri<e i,*"t fih"tu mtmiuta file yang sudah ada t"r1n Read(iabelArsip,daftar) r,i: 'i,1r,1n'v;,ffi Perintah i n i d igu na ka n u ntu k m e m baca i s i f i r e ig6g1"qjf ft ole'itpoi nter t=-a,, Write(iabelArsip,daftar) ''{'',-, 'i':,,;,,,,1i - Perintah ini digunakan untuk menulis dati"'hp,fi e pada tempat yang ditunjuk oleh pointer Close(iabelArsip),:": _ t ^ li Peri nta h i ni digu n a ka n u ntu k men utup nt setetifrs:eiai d iproses Keterangan : ",:-':, -- ',: - o iabelarsip adalah nama iabetfite o NamaArsip adalah B-ama file yangai*hoidferasikan tr Daftar adalah narna iabelyang harganya akan dituliskan ke dalam file it :r+ q'$s,, "'1,, Jenis File +' ' ;:+:, " Dalam pascal, dikdffijffie ltnis nte yaitu file teks dan file bertipe yang membedakan kedua jenis file ini adalah penggunaannya dan tipe -4*-e yang dapat disimpan di datam file tersebut r Fil Teks 4ii DalamPascal;:dikenal adanya bentuk file text, yaitu file yang berisikan deretan karakter pendefinisian file text cukup menggunakan statement text Contoh : Type t_f fte_text : text, fileteksl- : t_fi1e_text; f i1eteks2 : text, ''ii' Dengan pendeklarasian seperti contoh diatas maka berarti kita mempunyai dua buah iabel file yaitu fileteksl dan fileteks2 yang bertipe text Selain itu terdapat beberapa operasi yang hanya dapat digunakan dalam operasi file teks yaitu : tr Append(iabetArsip) operasi ini adalah prosedur yang hanya dapat diterapkan dalam filq text Fungsinya untuk menambhakan data ke dalam file text -Modul Praktikum Dasar Komputer tl5
l iabelarsip adalah nama iabel yang mewakili arsip yang akan dioperasikan yang bertipe data text Setelah prosedur ini dilaksanakan maka arsip akan dibuka dan pointer berada pada akhir file atau End of File (EOF) Sehingga semua operasi akan dimulai pada akhir arsip Readln(Va riabelarsip,dafta r) Digunakan untuk membaca suatu baris, setelah selesai maka pointer akan turun ke baris berikutnya Writeln(Va riabelarsip,daftar) Digunakan untuk menuliskan suatu baris ke file, setelah selesai maka pointer akan turun ke baris berikutnya' Eof(iabelArsip) Fungsi yang digunakan untuk mengecek apakah pointer telah berada di akhir file atau tidak' Bila ya true, sebaliknya false Fungsi ini bertipe data Boolean Eoln(iabelArsip) Fungsi yang berfungsi untuk mengecek apakah pointer ada di akhir baris atau tidak Bila ya maka tru6- sebaliknya false Fungsi inijuga bertipe data boolean tr SeekEof(iabelArsip) Fungsi yang berfungsi seperti EOF tetapi fungsi ini akan melompati blankdaniitab sebblurn mengetes EOF Keluaran adalah berupa boolean, yaitu true bila EOF, dan false bila sebaliknv,a,"- ':'r't, ti o SeekEoln(iabelArsip) tu,j::: Fungsi yang berfungsi seperti EOLN tetapi fungsi ini akan melompati'tlen;lg*dan tdb sebelum mengetes EOLN Keluaran adalah berupa boolean, yaitu true bila EOLN, dan false bila'qe,lalika,l;ffi1,,^ 2 File Bertipe ili: t! :r:il':ltil: :ll]l ti\ j::i'::i {S File Bertipe adalah file yang berisikan deretan data yang bertipe sama Bedaiiy,3 dehgan file teks adalah file teks hanya menyimpan data yang berupa sederetan karakter saja'sed,angkan pada file bertipe dapat menyimpan deretan data bertipe apapun yang bertipe sama Notasi pendefinisian file,beqtipe adalah sebagai berikut : Namaiabel : file of ti tat rl 'r "- Contoh pendeklarasiannya dalam pascal adalah : F: file of int perintah yang digunakan pada"lfilg-be'rtipe umumnya sama dengan file teks, hanya saja pada file bertipe tidak dapat digunakan perintah AppendiRead16Writefn, Eoln, SeekEoln Hal ini dikarenakan pada file bertipe tidak dikenal baris data File bertipe tidak menyi'tttpan dat'il+er'baris, melainkan per data/record' Beberapa perintah yang dapat digrlna! oleh file bertipe namun tidak dapat digunakan pada file teks adalah : Seek(va rji e, n o_r'eco rd ) Seringkatiilru,q,!:n suatu file bertipe ingin ditemukan data/record tertentu Untuk menentukan data tertentu pada file,'be-rtipellidj$t,n"trn prosedur Seek Dimana Jile adalah sebuah iabel file bertipe yang sudah di-assign terlebih dah liu sedangkan no_record adalah nomor record yang ingin ditemukan Sebagai catatan record pertama pada fi'le bertipe dimulai dari 0, bukan dari 1 2 FileSize Masalah yang kadang muncul adalah bagaimana caranya untuk mengetahui berapa data/record yang ada,pada file bertipe sehingga jika digunakan perintah SEEK, no_record tidak melebihi dari jumlah record yang ada Dengan menggunakan fungsi FileSize dapat diketahui berapa besar ukuran suatu file dalam satuan record Cara penulisannya sebagai berikut : v-banyak-record : = FileSize (-f ile-tipg]l dimana v_banyak_record adalah iabel bertipe longint(bilangan bulat) sedangkan -file-tipe adalah iabel bertipe file yang sudah di-assign dan dibuka 46 Modul Praktikum Dasar Komputer
3 Tru ncate(_file_tipe) untuk menghapus record tertentu pada file bertipe digunakan prosedur Truncate Dimana -file-tipe adalah iabel bertipe file yang telah di-assign dan dibuka Biasanya prosedur ini diawali dengan perintah Seekterlebih dahulu Misalkan ingin dihapus mulai dari record ke-n pada suatu file bertipe maka penulisannya sebagai berikut : Seek(_fi]e,n) ; Truncate (_f ile), Contoh Penesunaan Sekuensial File uses crt; arsiptext :!ext; clrgcr, assign (arsiprext,' TULSAN TXT' ) ; append(arsiptext) ; {membuka file dan writeln(arsiptext,, praktikum di DAsKoM close (arsiptext ), end meletakkan pointer di akhir enjoy banget '), {menuliskan file] kala2 ] Modu1 Praktikum Dasar Komputer 47
program inputfile; ugea crts; arsip : file of intseger nilaj-: inueger; clrscr,' asgign (arsip,' ANG(A DAT reset (arsip) ; whjle not EoF(arsip) do read ( arsip, nilai ) ;!,triteln (nilai ) ; end; close(arsip); readln; end program inputfile,' ubeg crg; arsip : file of integer; nilai : integer; clrgcr,' aseiger ( arsip,' ANGKA DAT' ) rewrite(arsip); nilai : =100; write(arsip,nilai); close(arsip); endil"ffi##''i:,+ ::,:t- ;:";'l:::' ti,i:,t:1,:, "L1, i ::1:, -,rw 'i/1xt 'tbi " -":{'1,#, l-- ' ah '*,,1" -, " 1rr 'i "l\r: ::lr:li-:r: \i: o4:-: i::{t\i ::-:;ri 'l: :::, i-\fiii: nl \:r 'ri pegawai NP : nana : saji : end,' Modul Praktikum Dasar Komputer
t! il i l ii wrttetnt'eerrkur oara YANG TELAH DTTNPUfKAN :'); while not EoF(arsip) do read(arsip,pgw) ; writeln('pegawai ke-', i) ; writeln('nfp : writeln('nama :',Pgwnama),' "Pgw-NrP),' writeln('gaji :',Pw-gaji); writeln(===================================='), i: =i+1,' end; close(arsip); readln; and t+,:::; ii odi "f-,::,:iiirt";tith\lll, i '''''lr\ *s : Lil i l Modul Praktikum Dasar Komputer 49! t