ALGORITMA DAN
PEMROGRAMAN 2
MATERI
• Teks/string • Pointer • File • Struktur • Kelas • Konstruktor dan Destruktor• Kelas dan Obyek
• Overloading Operator • Inheritance (Pewarisan) • Polimorfisme
• Template Fungsi dan Kelas
• Sort • Search
FILE
Pertemuan 03
Pendahuluan File
•
BIT = Binary Digital
•
Byte adalah unit terkecil yang mempunyai makna
•
1 Byte = 8 bit
•
Field adalah kumpulan byte yang mempunyai arti
•
Record adalah kumpulan field-field dalam satu
kelompok
•
File adalah kumpulan dari record-record
•
File digunakan agar data yang terkumpul dapat
disimpan
Pendahuluan File
•
Tempat penyimpanan data dalam
disk disebut dengan FILE
•
Berdasarkan jenis data yang
disimpan, file dibedakan menjadi
2, yaitu :
–
File Teks
–
File Biner
Pengaksesan File
•
File Teks,
– semua data akan diubah menjadi teks, sehingga
– File dapat dibuka oleh sembarang program pengolah kata seperti notepad, word, dll.
– dapat dibaca dengan mudah karena berbentuk teks
•
File Biner,
– data disimpan berdasarkan nilai binernya (bilangan yang hanya terdiri dari angka 0 dan 1)
– representasi data yang disimpan tidak akan sama dengan representasi data yang terlihat.
PERBEDAAN FILE TEKS & FILE BINER
Kategori File Teks File Biner
Jenis
penyimpanan
Berupa teks Berupa representasi
dari bilangan biner Kecepatan
akses
Lebih lambat karena hrs melakukan konversi dari dt bkn teks ke teks saat penyimpanan dan sebalik nya saat pembacaan
Lebih cepat karena
tidak diperlukan proses konversi
Pengaksesan Dapat diakses atau
di-baca oleh semua program pengolah kata karena
berupa teks
Hanya dapat di-akses atau dibaca oleh si
pembuat program atau programmer lain bila mengetahui tipe dari data yang di-simpan
File
•
Komputer memang tidak pernah lepas dari
file.
•
Program yang kita tulis biasanya di letakkan
kedalam file
•
Operasi pada file pada dasarnya meliputi tiga
tahapan:
–
Membuka/mengaktifkan file
–
Melaksanakan proses file
Fungsi-fungsi Sistem I/O File
fopen()
Membuka sebuah file
fclose()
Menutup sebuah file
utc()
Menulis sebuah karakter kedlm sebuah file
gets()
Membaca sebuah karakter dari
sebuah file
fseek()
Mencari byte tertentu didalam sebuah file
fprintf()
= printf(), tetapi tujuannya ke sebuah file
Fungsi-fungsi Sistem I/O File
fscanf() = scanf(), tetapi dari sebuah file
feof() Menghasilkan true, apabila mencapai akhir file ferror() Menghasilkan true, jika terjadi kesalahan
fread() Membaca sebuah blok data dari sebuah file
fwrite() Menulis sebuah blok data ke dalam sebuah file rewind() Memindahkan penunjuk keawal file
Modus pembukaan File
Modus Arti
=====================================
“r” Membuka file untuk pembacaan data “w” Membuka file untuk penulisan data “a” Menambah data ke dalam file
“rb” Membuka file biner untuk pembacaan data “wb” Membuka file biner untuk penulisan data “ab” Menambah data kedalam file biner
“r+” Membuka file untuk pembacaan/penulisan data “w+” Membuka file untuk pembacaan/penulisan data “a+” Menambah/membuat sebuah file untuk
Modus pembukaan File
Modus Arti
=====================================
“w+b” Membuka file biner untuk pembacaan/penulisan data
“a+b” Menambah/membuat sebuah file biner untuk pembacaan/penulisan
“rt” Membuka file teks untuk pembacaan data “wt” Membuka file teks untuk penulisan data “at” Menambah data kedalam file teks
“r+t” Membuka file teks untuk pembacaan/penulisan data “w+t” Membuka file teks untuk pembacaan/penulisan data “a+t” Menambah/membuat sebuah file teks untuk
Modus pembukaan File
Modus Arti
=====================================
ios::app Membuka file dengan modus keluaran, tetapi memungkinkan operasi penambahan data
ios::ate Membuka file untuk keperluan masukan maupun keluaran dan secara otomatis menempatkan
penunjuk file ke posisi akhir file
ios::in Membuka file untuk operasi masukan. Modus ini merupakan bawaan untuk objek bertipe ifstream ios::out Membuka file untuk operasi keluaran. Modus ini
Modus pembukaan File
Modus Arti
===================================== ios::nocreate Membuka file yang sudah ada.
Apabila file belum ada, maka operasi pembukaan gagal dilaksanakan
ios::noreplace Membuka file baru.
Apabila file sudah ada, maka operasi
pembukaan gagal dilaksanakan, kecuali ios::ate / ios::app disertakan
ios::trunc Menghapus file yang sudah ada dan menciptakan file baru
ios::binary Membuka file dengan operasi baca-tulis secara biner
FILE TEKS
•
Membuka/mengaktifkan file
Sebelum suatu file dapat diproses, file harus dibuka terlebih dahulu
Mode/library : #include <fstream.h>
deklarasi : FILE *fopen(char *namafile, char *mode/modus);
contoh :
file_keluaran.open(“BIODTKU1.TXT”); file_keluaran adalah nama objek file
FILE TEKS
•
Menuliskan ke file
contoh :
FILE TEKS
•
Menutup file
Int fclose(FILE*pf);
contoh :
FILE TEKS
Contoh Soal 01:
Perintah file yang merekam Biodata Anda
masing-masing (Nama, Alamat, NIDN, Jenis
Kelamin, Tahun Masuk) Nama file TXT
Program contoh 01
Algoritma...?????
Pseudocode...??????
Buat Kelompok :
1. Perintah file yang merekam Isi lima sila dari Pancasila Nama file TXT adalah PANCA.TXT (tls : Al :faqih – ps : ines – pg:pipit) (pr: al:ringga – ps: chandra – pg:rico) 2. Perintah file yang merekam Mata kuliah yang Anda
ambil semester ini Nama file TXT adalah MTKLH.TXT (tls : Al : Mufi – Ps : Putri – Pg: Faris) (Pr: Al : Rara – Ps:
Yunus).
3. Perintah file yang merekam Nama Teman-teman Anda di Algo II Nama file TXT adalah TEMANKU.TXT (tls : Al : rusma – Ps : wahyu – Pg:alfa) (Pr: Al : Rezki – Ps: rizki). 4. Perintah file yang merekam Nama 10 Propinsi di
Indonesia Nama file TXT adalah PROPINSI.TXT (tls : Al : nurfa – Ps : ari – Pg : yadi) (Pr : Al : musi – Ps : vidya).
Algoritma...?????
Pseudocode...??????
FILE TEKS
•
Menampilkan file
nama file.getline(buffer, variabel);
contoh :
FILE
Contoh Soal 02:
Program contoh 02
Algoritma...?????
Pseudocode...??????
Buat Kelompok :
1. Buatlah program dengan menampilkan
PANCA.TXT
2. Buatlah program dengan menampilkan
MTKLH.TXT
3. Buatlah program dengan menampilkan
TEMANKU.TXT
4. Buatlah program dengan menampilkan
PROPINSI.TXT
Algoritma...?????
Pseudocode...??????
FILE
• Mendeklarasikan variabel pointer file
Digunakan untuk membaca dan menuliskan file
FILE *fp
• Menuliskan karakter
Digunakan untuk menuliskan karakter dari sebuah file yang telah dibuat dengan fopen()
int putc(int ch, FILE *fp);
• Membaca karakter
Digunakan untuk membaca karakter dari sebuah file yang telah dibuka dengan modus baca
int gets(FILE *fp);
• Memakai feof()
Digunakan untuk mendeteksi akhir file pada saat membaca data
FILE BINER
•
Pengaksesan File Biner lebih cepat dibandingkan
File Teks
•
Tidak terjadi proses konversi saat penulisan dan
pembacaan, pengaksesannya
•
Penyimpanan data nya dilakukan dalam bentuk
biner (tersusun dari kumpulan angka 0 atau 1)
•
Jika Anda ingin menyembunyikan data Anda (agar
tidak sembarang orang dapat membacanya)
Penulisan Data ke FILE BINER
•
Tidak perlu memberikan tambahan karakter
seperti spasi, tabulasi, enter, dan sebagai-mana
yang dilakukan di file teks
•
Contoh : sebuah bilangan integer (int) misalnya
akan selalu tersimpan sepanjang 2 byte, tanpa
tergantung nilai bilangan tersebut
•
Data yang tersimpan di file biner sebaiknya
benar-benar hanya datanya saja
•
Syntax :
fwrite(alamat_variabel, ukuran_data,
banyak_data, namafile)
•
fwrite akan menulis isi dari variabel
•
alamat_variabel alamatnya disebutkan di
parameter pertama perintah tersebut
•
ukuran_data informasi tentang ukuran
(dalam byte)
•
banyak_data banyaknya data yang ingin
ditulis
FILE BINNER
Contoh Soal 03:
Perintah file yang merekam/menyimpan 3
buah data (22, 7, 66) dengan tipe integer
secara biner. Nama file biner adalah
Program contoh 03
Algoritma...?????
Pseudocode...??????
FILE
Contoh Soal 04:
Program contoh 04