Algoritma dan Pemrograman File Sekuensial. Oleh: Eddy Prasetyo N 05/05/2014 1

dokumen-dokumen yang mirip
SEQUENTIAL FILE. Tujuan Perkuliahan

SUFAJAR BUTSIANTO, SKOM, MKOM ARSIP BERUNTUN (SEQUENTIAL FILE)

Definisi Arsip Beruntun

Arsip Beruntun. Definisi Arsip Beruntun. Contoh Arsip Beruntun

CCH1A4 / Dasar Algoritma & Pemrogramanan

Topik. Stream I/O Cara menggunakan Stream Hierarchy Java I/O Membaca File Menulis File Menghapus File Cara membaca isi Direktori dalam file

IKG2A3/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Mesin Abstrak

Mesin Karakter dan Mesin Kata

Algoritma dan Pemrograman Array/Tabel[1] Oleh: Eddy Prasetyo N

PRAKTIKUM 8 FILE INPUT OUTPUT

A. TUJUAN PEMBELAJARAN

MODUL 7 I/O Stream. Tujuan: Mahasiswa dapat mengenal dan memahami konsep I/O Stream, serta penerapan I/O Stream dalam konsep OOP

PENGULANGAN SKEMA PEMROSESAN SEKUENSIAL. Tim Pengajar KU1071 Sem

STREAM DAN FILE. PipedInputStream, SequenceInputStream, dan StringBufferInputStream.

Algoritma dan Pemrograman PROSEDUR. Oleh: Eddy Prasetyo N

Introduction To Stream

PERTEMUAN V STREAM DAN OOP TUJUAN PRAKTIKUM. 2. Praktikan memahami pemrograman berbasis objek dengan mengetahui karakteristik OOP.

2 ATURAN PENULISAN TEKS ALGORITMA

A. TUJUAN PEMBELAJARAN

PRAKTIKUM 7 DASAR INPUT OUTPUT

PEMROGRAMAN JARINGAN MODUL 3 STREAM

Algoritma dan Pemrograman

Pemrograman Socket menggunakan TCP

Struktur Program. Rinta Kridalukmana

Materi kuliah I/O & FILE. Ir. Roedi Goernida, MT.

Algoritma dan Pemrograman FUNGSI

Sekarang, kita akan mencoba untuk menganalisa program Java pertama : public class Hello {

Modul 1 Mesin Karakter 1

Percabangan & Perulangan

I/O Streams. Oleh Kholid Fathoni

Bahasa Pemrograman :: Dasar Pemrograman Java

PEMROGRAMAN JAVA. Petunjuk Penulisan Program Token Aturan Penamaan Identifier Lingkungan /Scope dari variabel Tipe Data (i) Yoannita

Array. Adharul Muttaqin Universitas Brawijaya Malang. Array

BAB 3 FILE SEQUENTIAL, FILE INDEKS DAN FILE RELATIF

Pertemuan ke-1 STREAM DAN IO. A. TUJUAN : Mampu mengimplementasikan kelas-kelas untuk menangani aliran data.

Mesin Abstrak. Tim Pengajar KU1071 Sem

MODUL III ARRAYLIST TUGAS PENDAHULUAN

Array (Tabel) Tim Pengajar KU1071 Sem /11/3 TW/KU1071 1

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-14 Arsip (File) 3

PEMROGRAMAN JAVA : STREAM DAN FILE

PRAKTIKUM 9 ORGANISASI FILE/PENGOLAHAN DATA DENGAN FILE BERTIPE

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma

SUMBER BELAJAR PENUNJANG PLPG

BAB Argument Command-Line dan System Properties

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

LIST LINIER 1. DEFINISI

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

IKG2I4 / Software Project I

Pertemuan 7 File pada Java

IOSTREAM bagian 2. Kholid Fathoni

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04)

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

TIPE DATA Pertemuan (K-03/L-03)

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

FILE URUT (Sequential File)

PAKET (PACKAGE) 20 Januari 2012

Tiga Metode Sangat Penting dalam Pemrograman Java Bagi Pemula

Dasar-Dasar Pemrograman Java

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

Array Sebagai Parameter Method

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

PROCEDURE DIVISION (lanjutan)

BAB 2 INPUT DARI KEYBOARD

RENCANA PEMBELAJARAN SEMESTER (RPS)

Mukhlidi Muskhir Modul 2

SINTAKS-SINTAKS PADA FILE SEQUENSIAL

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

Praktikum 14. Sistem File 1 KONSEP FILE POKOK BAHASAN: TUJUAN BELAJAR:

Pemrograman. Pertemuan-3 Fery Updi,M.Kom

RENCANA PEMBELAJARAN SEMESTER (RPS)

FILE & STREAM Bab FILE

FILE URUT (Sequential File)

STRUKTUR PEMROGRAMAN PYTHON

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom

PEMAHAMAN DASAR DASAR JAVA

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL)

Dapat dicompile dan mendapat output hai. Dapat dicompile dan mendapat output disana

2. Pernyataan mana yang dapat kita laksanakan dengan menggunakan class File? Mengganti direktori tempat bekerja saat ini

Pertemuan 2 Struktur Kontrol Percabangan

Operator, Statement kondisional, dan Iterasi pada Java

BAB VI ARRAY Mendeklarasikan Variabel Array int[ ] bilangan; int bilangan[ ]; Mendefinisikan Array Bilangan = new int[5]; Latihan 21. ArrSatu.

Modul Ke-1 Pertemuan ke-1 Deskripsi: Pemrosesan Sekuensial Larik Nama File: P01-XXX (XXX adalah 3 digit terakhir NPM)

Struktur Data dan Algoritma IKI10400 Semester Gasal 2010/2011 Fakultas Ilmu Komputer Universitas Indonesia

PROSEDUR. Jadi, setiap prosedur harus : - Didefinisikan (dibuat spesifikasinya) dan dituliskan kode programnya - Dipanggil, pada saat eksekusi

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

I/O (Input dan Output)

Type Data Record & File. Pendahuluan : Kegiatan Praktikum :

Aplikasi Algoritma Brute Force Pada Knight s Tour Problem

Prosedur. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Percabangan dan Perulangan

Belajar ArrayList di Java

Latihan Ujian Pemrograman Berorientasi Objek. Semester Genap 2016/2017

Catatan Kuliah PEMROGRAMAN KOMPUTER II FILE TEXT

Bab 10: Antar Muka Sistem File. Konsep File

TPI4202 e-tp.ub.ac.id

Metode Binnary Searching di Java Console

Transkripsi:

Algoritma dan Pemrograman File Sekuensial Oleh: Eddy Prasetyo N 05/05/2014 1

Agenda Definisi Primitif Akses Primitif Penulisan Pemrosesan Arsip Sekuensial Algoritma Konsolidasi 05/05/2014 2

Definisi [1] Sekumpulan rekaman yang dapat diakses secara berurutan mulai dari rekaman pertama sampai dengan rekaman terakhir, rekaman per rekaman secara searah 05/05/2014 3

Definisi [2] Rekaman terakhir adalah fiktif, sebagai penanda akhir dari arsip. Sering disebut dengan EOF (end-of-file) Arsip sekuensial merupakan hasil dari penulisan yang dilakukan rekaman (record) per rekaman 05/05/2014 4

Definisi [3] Setiap rekaman boleh berisi type dasar ataupun terstruktur yang telah didefinisikan, setiap rekaman berstruktur sama Elemen dalam rekaman disebut field. Cara Pendefinisian: type rekaman : <.> sebuah type terdefinisi untuk setiap rekaman namaarsip : SEQFILE of (*) <nama_rek> : rekaman (1) <mark> 05/05/2014 5

Definisi [4] Setiap rekaman dapat diakses dan dibaca secara berurut primitif akses Perekaman (recording) dapat dilakukan melalui primitif penulisan Catatan: pada suatu arsip sekuensial hanya dapat dilakukan satu modus operasi: diakses/dibaca atau ditulis (pada saat bersamaan). 05/05/2014 6

Primitif Akses [1] ASSIGN Procedure ASSIGN (Input NamaArsip, NamaFisik) { Arsip sekuensial yang namanya dikenal di dalam program sebagai NamaArsip, secara fisik diberi nama NamaFisik I.S. : sembarang F.S.: Arsip dengan NamaArsip pada program siap dipakai } OPEN Procedure OPEN (Input NamaArsip, <rekaman>) { Arsip sekuensial siap dibaca. Rekaman pertama yang informasinya ada pada <rekaman> dapat diakses I.S. : sembarang F.S.: informasi pada rekaman pertama siap diakses, dengan mengacu kepada <rekaman> } 05/05/2014 7

Primitif Akses [2] READ Procedure READ (Input NamaArsip, NamaFisik) { Rekaman sesudah rekaman saat ini(current) yang dapat diakses I.S. : <rekaman> bukan merupakan mark, sebut sebagai current_rekaman F.S.: Arsip dimajukan satu rekaman, <rekaman > berisi informasi yang disimpan pada rekaman Sesudah current_rekaman. Mungkin <rekaman> yang baru adalah mark } CLOSE Procedure CLOSE (Input NamaArsip) { Arsip sekuensial ditutup, tidak dapat diakses maupun ditulisi lagi I.S. : sembarang F.S.: Arsip tidak dapat diproses lagi } 05/05/2014 8

Primitif Penulisan REWRITE Procedure REWRITE (Input/Output NamaArsip) { Arsip sekuensial siap untuk direkam I.S. : sembarang F.S.: Arsip sekuensial yang bernama NamaArsip siap untuk direkam pada posisi pertamanya } WRITE Procedure WRITE (Input NamaArsip, <rekaman>) { Data pada <rekaman> direkam pada posisi aktual arsip. Kemudian posisi dimajukan satu. I.S. : arsip sekuensial berada pada posisi yang telah siap menerima rekaman, <rekaman> bukan merupakan mark F.S.: <rekaman> direkam pada posisi yang telah disiapkan, arsip dmajukan satu posisi Jika <rekaman> yang diisikan ke arsip adalah elemen fiktif yang dimaksudkan sebagai mark, maka arsip tidak dapat ditulisi lagi } 05/05/2014 9

Contoh [1] Sebuah arsip sekuensial berisi data mahasiswa, yang setiap rekamannya memuat data NIM, Nama dan Nilai akhir mahasiswa. type rekaman : < NIM:integer, Nama : string, Nilai :integer [0..100]> ArsipMhs : SEQFILE of (*) RekMhs : rekaman (1) <999999, '',0> Domain setiap rekaman : sesuai dengan domain masing-masing rekaman Konstanta : sebuah rekaman, misalnya : <7473001,'Juliette',95> <8690022,'Laura',80> 05/05/2014 10

Contoh [1] - lanjutan Cara akses rekaman pertama : OPEN (ArsipMhs, RekMhs) Cara akses : { NIM 9999999 } READ (ArsipMhs, RekMhs ) Cara menyiapkan untuk direkam : REWRITE (ArsipMhs) Cara mengisi : WRITE (ArsipMhs, RekMhs ) {Harga Current } WRITE(ArsipMhs, <7473002,'Davy Rindt',96>) { konstanta } WRITE(ArsipMhs, Rek1) { Rek1 bertype rekaman } Cara mengisi akhir rekaman : WRITE (ArsipMhs, <9999999,'',0>) {Mark} 05/05/2014 11

Contoh [2] Sebuah arsip sekuensial berisi teks, maka setiap rekamannya adalah satu karakter. Misalnya MARK adalah ' #' type rekaman : character Dokumen :SEQFILE of (*) CC : rekaman (1) <'#'> Domain setiap rekaman : character Konstanta : sebuah rekaman, misalnya : <'A'> <'0'> <'#'> 05/05/2014 12

Contoh [2] - lanjutan Cara akses rekaman pertama : OPEN (Dokumen, CC) Cara akses : { CC '#' } READ (Dokumen, CC) Cara menyiapkan untuk direkam : REWRITE (Dokumen) Cara mengisi : WRITE (Dokumen, CC) {Harga Current } WRITE (Dokumen, <'A'>) { konstanta } WRITE (Dokumen, Kar) {dari nama lain, Kar bertype rekaman} Cara mengisi akhir rekaman : WRITE (Dokumen, <'#'>) 05/05/2014 13

Pemrosesan Arsip Sekuensial Jika setiap rekaman harus diproses dengan cara sama, pemrosesan arsip sekuensial dapat dilakukan dengan memakai skema pemrosesan sekuensial dengan mark. Contoh1: Dibaca sebuah arsip sekuensial bernama type rekaman : < NIM : integer,,nilai:integer [0..100] > ArsipMhs: SEQFILE of (*) RekMhs : rekaman (1) <9999999, 99> 05/05/2014 14

Contoh Pemrosesan Analisa : pemrosesan sekuensial dari elemen arsip sekuensial Model tanpa MARK, jika i adalah deret yang diproses, i berharga 1,2,3..N EOP adalah NIM=9999999 First_Elmt : OPEN(ArsipMhs, RekMhs ) Next_Elmt : READ(ArsipMhs, RekMhs) Proses : membaca arsip sambil menghitung nilai rata-rata mahasiswa 05/05/2014 15

Contoh Pemrosesan - lanjutan 05/05/2014 16

Pemrosesan File di Java Membuka File (izin Akses File) File nama_var_file; nama_var_file = new File(path&nama_file); Memproses File (Baca/Tulis File) Baca File InputStream nama_var_stream = new FileInputStream(nama_var_file); Tulis File OutputStream nama_var_stream = new FileOutputStream(nama_var_file); Menutup File nama_var_stream.close(); 05/05/2014 17

Contoh di Java:... File Mahasiswa; Mahasiswa= new File( C:\Latihan.txt ); //Baca file InputStream fs = new FileInputStream(Mahasiswa); //Tulis File OutputStream fs = new FileOutputStream(Mahasiswa); //Tutup File fs.close();... Ctt: Dalam Java, saat sebuah file dibuat yang mengacu pada file, bukan berarti sebuah file telah terbuka ijin aksesnya. Ijin akses dibuka jika saat telah dikaitkan dengan sebuah stream 05/05/2014 (FileInputStream ato FileOutputStream) 18

Membuat File dalam JAVA Format: try { new File(nama_file).createNewFile(); }catch(exception e){ } Contoh: try { new File( Latihan.txt ).createnewfile(); }catch(exception e){ } 05/05/2014 19

Contoh Program Buat File import java.io; class File1{ public static void main(string[] args){ try { new File( Latihan.txt ).createnewfile(); }catch(exception e){ } } } 05/05/2014 20

Mendeteksi Keberadaan File import.java.io; Class File2{ public static void main(string[] args){ File file_cek; file_cek = new File( Latihan.txt ); if(file_cek.exists()){ System.out.println( file Latihan.txt sudah ada ); }else{ System.out.println( file Latihan.txt belum ada ); } } } 05/05/2014 21

Algoritma Konsolidasi Didefinisikan sebuah sequential file yang terurut, arsip tersebut mengandung kelompok-kelompok data dengan kunci sama yang harus diproses sebagai satu kesatuan. Ada dua model arsip semacam ini : Tanpa separator Dengan separator 05/05/2014 22

Tanpa Separator Artinya kita mengenali adanya kelompok yang lain karena kunci berubah 05/05/2014 23

Tanpa kasus kosong 05/05/2014 24

Tanpa kasus kosong- lanj 05/05/2014 25

Contoh Diketahui sebuah arsip nilai mahasiswa, Satu mahasiswa dapat mempunyai beberapa buah nilai (karena dalam satu semester mengambil beberapa matakuliah dan setiap mahasiswa tidak sama matakuliahnya). Buat algoritma untuk menghitung nilai rata-rata setiap mahasiswa, dan membuat daftar nilai sederhana, yaitu menuliskan NIM dan nilai rata-rata setiap mahasiswa 05/05/2014 26

Contoh -lanj 05/05/2014 27

Contoh -lanj 05/05/2014 28

Dengan kasus kosong 05/05/2014 29

Dengan kasus kosong-lanj 05/05/2014 30

Contoh Diketahui sebuah arsip nilai mahasiswa, Satu mahasiswa dapat mempunyai beberapa buah nilai (karena dalam satu semester mengambil beberapa matakuliah dan setiap mahasiswa tidak sama matakuliahnya). Buat algoritma untuk menghitung nilai rata-rata setiap mahasiswa, dan membuat daftar nilai sederhana, yaitu menuliskan NIM dan nilai rata-rata setiap mahasiswa. Selain itu diminta Nilai rata-rata seluruh mahasiswa, jumlah nilai rata-rata setiap mahasiswa dibagi jumlah mahasiswa. 05/05/2014 31

Contoh -lanj 05/05/2014 32

Contoh -lanj 05/05/2014 33

Dengan Separator Artinya ada rekaman tertentu yang memisahkan satu kelompok dan kelompok lainnya. Separator ini boleh satu rekaman atau lebih dari satu rekaman. Pada contoh berikut, separator adalah "kartu putih" 05/05/2014 34

Algoritma konsolidasi 05/05/2014 35

Algoritma konsolidasi -lanj 05/05/2014 36

Contoh Diberikan sebuah arsip teks yang dapat diakses sequential huruf per huruf. Hendak dihitung kata yang terpanjang dalam teks tersebut. Diandaikan bahwa teks hanya mengandung huruf dan "blank". Kata adalah sekumpulan huruf yang dipisahkan oleh satu atau beberapa blank. 05/05/2014 37

Contoh -lanj 05/05/2014 38

Contoh -lanj 05/05/2014 39