Praktikum : Algoritma dan Pemrograman II Modul Praktikum ke : 3 Judul Materi : File Tujuan / Sasaran : Mahasiswa dapat membuat pseudocode, algoritma dan mempraktekkan perintah file Waktu (lama) : 3 Jam Aplikasi yang digunakan : C++ I. File Operasi pada file pada dasarnya meliputi tiga tahapan : 1. Membuka/mengaktifkan file 2. Melaksanakan proses file 3. Menutup file Berdasarkan jenis data yang disimpan, file dibedakan menjadi2, yaitu : - File teks - File Biner File Teks Karakteristik File Teks adalah : - Semua data akan diubah menjadi teks, sehingga file tersebut dapat dibuka oleh sembarang program pengolah kata seperti notepad, word, dll - Dapat dibaca dengan mudah karena berbentuk teks Membuka/mengaktifkan file Sebelum suatu file dapat diproses file harus dibuka terlebih dahulu Mode : #include<fstream.h> Deklarasi : FILE *fopen(char *namafile, char *mode/modus); Contoh : file_keluaran.open( BIODTKU1.TXT ); file_keluaran adalah nama objek file Algoritma dan Pemrograman II Hal : 1
Menuliskan ke file Deklarasi : nama objek file[ isi file ] Contoh : file_keluaran<< Teguh.. <<endl; Menutup file Deklarasi : type data *fclose(file*pf); Contoh: file_keluaran.close(); Menampilkan file Deklarasi : nama file.getline(buffer, variabel); Contoh: file_masukan.getline(buffer, variabel); Dibawah ini contoh pseudocode, algoritma dan program FILE TEKS, yang merekam Biodata Anda masing-masing (Nama, Alamat, NIDN, JK, Thn Msk), untuk Nama file TXT adalah BIODTKU1.TXT Algoritma 1. Mendefinisikan objek file_keluaran 2. Membuka file objek (file_keluaran.open("biodtku1.txt")) 3. Menulis/merekam ke file objek ("Nama : Sri Rezeki Candra Nursari ) 4. Menulis/merekam ke file objek ("Alamat : Jl. Kerambik Blok D7/7 Medan ") 5. Menulis/merekam ke file objek ("NIDN : 0322076603") 6. Menulis/merekam ke file objek ("JK : Perempuan ) 7. Menulis/merekam ke file objek (" Thn Msk: 2002 ) 8. Menutup file (file_keluaran.close()) 9. Selesai Algoritma dan Pemrograman II Hal : 2
{Nama file : file01.cpp} Dibawah ini contoh algoritma, pseudocode dan program FILE TEKS, menampilkan file BIODTKU1.TXT Algoritma dan Pemrograman II Hal : 3
Algoritma 1. MAKS = 80 (Definisikan varibel untuk Σ karakter yang diinginkan) 2. Definisikan buffer/penyangganya 3. Memanggil file teks yang telah dibuat (ifstream file_masukan("biodtku1.txt")) 4. Jika (file_masukan) kerjakan baris 5 s.d. 6 5. Membaca sejumlah karakter sebanyak MAKS (file_masukan.getline(penyangga, MAKS)) 6. Menampilkan/mencetak penyangga 7. Menutup file (file_masukan.close()) 8. Selesai {Nama file : file02.cpp} Algoritma dan Pemrograman II Hal : 4
File Biner Karakteristik File Biner adalah : - 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 - 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) - Harus memahami kode ASCII - Tidak perlu memberikan tambahan karakter seperti spasi, tabulasi, enter, dan sebagaimana yang dilakukan di file teks - Data yang tersimpan di file biner sebaiknya benar-benar hanya datanya saja - Contoh : sebuah bilangan integer (int) misalnya akan selalu tersimpan sepanjang 2 byte, tanpa tergantung nilai bilangan tersebut Menuliskan file Deklarasi : 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 namafile merupakan nama file biner Perbedaan File Teks dan File Biner Kategori File Teks File Biner Jenis penyimpanan Berupa teks Berupa representasi dari bilangan biner Kecepatan akses Pengaksesan Lebih lambat karena harus melakukan konversi dari data bukan teks ke teks saat penyimpanan dan sebaliknya saat pembacaan Dapat diakses atau dibaca oleh semua program pengolah kata karena berupa teks Lebih cepat karena tidak diperlukan proses konversi Hanya dapat diakses atau dibaca oleh si pembuat program atau programmer lain bila mengetahui tipe dari data yang disimpan Dibawah ini contoh program FILE BINER, Perintah file yang merekam/menyimpan 3 buah data (22, 7, 66) dengan tipe integer secara biner. Nama file biner adalah Angka.DAT Algoritma dan Pemrograman II Hal : 5
Program Menampilkan file Angka.DAT Algoritma dan Pemrograman II Hal : 6
Dibawah ini contoh program FILE STRUCTURE, yang menampilkan gaji honerer setiap pegawai, jumlah pegawai = 3, untuk Nama file TXT adalah HONOR.TXT II. Soal praktikum / latihan Buat Pseudocode, Algoritma dan Programnya 1. Dengan perintah file yang menampilkan Biodata Anda masing-masing (Nama, Alamat, Hobby, Usia, Status) Nama file TXT adalah BIODTKU1.TXT (nama file : Prak3-01.ccp): Algoritma dan Pemrograman II Hal : 7
2. Dengan perintah file yang menampilkan Komposisi Nilai dengan perincian sebagai berikut : - Nilai A : 85 100 - Nilai A- : 80 85 - Nilai B+ : 76 80 - Nilai B : 72 76 - Nilai B- : 68 72 - Nilai C+ : 64 68 - Nilai C : 56 64 - Nilai D : 45 56 - Nilai E : 0 45 Nama file TXT adalah NILAI1.TXT (nama file : Prak3-02.ccp): 3. Dengan perintah file yang menampilkan Informasi KTP Anda masing-masing. Nama file TXT adalah KTP1.TXT (nama file : Prak3-03.ccp): 4. Dengan perintah file yang menampilkan informasi golongan darah Anda. Nama file TXT adalah GOLDRH.TXT (nama file : Prak3-04.ccp): 5. Dengan perintah file yang menampilkan Informasi SIM Anda masing. Nama file TXT adalah SIMKU1.TXT (nama file : Prak3-05.ccp): 6. Buat Seperti soal nomer 1 tetapi berupa struktur Nama file TXT adalah BIODTKU2.TXT (nama file : Prak3-06.ccp): 7. Buat Seperti soal nomer 3 tetapi berupa struktur Nama file TXT adalah KTP2.TXT (nama file : Prak3-07.ccp): 8. Buat Seperti soal nomer 5 tetapi berupa struktur Nama file TXT adalah SIM2.TXT (nama file : Prak3-08.ccp): 9. Buatlah berdasarkan soal nomer 1 dengan menggunakan File Biner (nama file : Prak3-09.ccp): 10. Buatlah berdasarkan soal nomer 2 dengan menggunakan File Biner (nama file : Prak3-10.ccp): 11. Buatlah berdasarkan soal nomer 3 dengan menggunakan File Biner (nama file : Prak3-11.ccp): 12. Buatlah berdasarkan soal nomer 4 dengan menggunakan File Biner (nama file : Prak3-12.ccp): 13. Buatlah berdasarkan soal nomer 5 dengan menggunakan File Biner (nama file : Prak3-13.ccp): 14. Tambahkan isi Biodata Anda masing-masing dengan (Pendidikan Terakhir, No.HP, Warna kesukaan) Nama file TXT adalah BIODTKU1.TXT (nama file : Prak3-14.ccp): 15. Tambahkan isi data yang menampilkan Komposisi Nilai dengan perincian sebagai berikut : - Nilai F : 0 30 Nama file TXT adalah NILAI1.TXT (nama file : Prak3-15.ccp): Algoritma dan Pemrograman II Hal : 8
16. Tambahkan isi data yang menampilkan Informasi KTP Anda masing-masing. Tambahan data (Hobby, Angka yang disukai) Nama file TXT adalah KTP1.TXT (nama file : Prak3-16.ccp): 17. Tambahkan isi data yang menampilkan informasi golongan darah Anda. Tambahan data (A Reshus +, A Reshus -, B Reshus +, B Reshus -) Nama file TXT adalah GOLDRH.TXT (nama file : Prak3-17.ccp): 18. Tambahkan yang menampilkan Informasi SIM Anda masing. Tambahan data (Hobby, Gol Darah). Nama file TXT adalah SIMKU1.TXT (nama file : Prak3-05.ccp): III. Referensi - Munir, Rinaldi, Algoritma & Pemrograman 1 & 2, Penerbit Informatika, Jakarta, 2003 - Brookshear, Glenn, Computer Science, Penerbit Erlangga, Jakarta, 2004 - Suryadi, Pengantar Algortima dan Pemrograman - Yatini B, Indra, Pemrograman Terstruktur, J&J Learning Yogyakarta, 2001 - Limanto, Susana, Algoritma dan pemrograman, Dinastindo Jakarta, 2002 - Paul Tremblay, Jean, An Introduction to Computer Science an algorithmic Approach, McGraw-Hill, 1981 - Wirth, Niklaus, Algorithmic + Data Structures = Programs, Prentice-Hall, 1976 - Jogiyanto H.M, Kosep Dasar Pemrograman Bahasa C, Andi Offset Yogyakarta, 1993 - Munir, Rinaldi, Algoritma dan Pemrograman Dalam Bahasa Pascal dan C, Informatika Bandung, 2001 - Pranata, Antony, Algoritma dan Pemprograman, J&J Learning Yogyakarta, 2000 - Andri Kristanto, Algoritma dan Pemrograman dengan C++, Graha Ilmu, 2003 - Thompson Susabda Ngoen, Algoritma dan Struktur Data Bahasa C, Mitra Wacana Media, 2009 Algoritma dan Pemrograman II Hal : 9