Anda di halaman 1dari 7

Nama NIM Kelompok

: A.A.Wisma S. Mahardika : 1104505056 : 12

PRAKTIKUM ALGORITMA DAN PEMROGRAMAN MODUL IV

OPERASI FILE
4.1 1. 2. 3. 4. 4.2 1. Tujuan Memahami dasar-dasar pemrograman C++. Memahami penggunaan operasi file pada C++. Memahami penggunaan tipe data string dalam pembuatan program. Memahami konsep struct dalam pemrograman dengan bahasa C++. Tugas Pendahuluan Sebutkan dan jelaskan tentang penggunaan tipe data string beserta dgn fungsi-fungsi yang dapat di pakai untuk mengkonversi tipe data string ke tipe data lain. Jelaskan dan berikan contoh penggunaan fstream, ofstream, ifstream, dan statemen lain yang digunakan dalam operasi file, dalam C++. Jelaskan tentang struct dalam pemrograman dengan bahasa C++. Buatlah program permasalahan berikut ini. Masalah : Anda adalah seorang asisten dari matakuliah Algoritma dan Pemrograman di suatu kelas. Pada suatu hari diadakan quiz di kelas tersebut. Anda mengoreksi semua jawaban mahasiswa dan menyimpannya ke dalam file asisten.in bertipe text. Namun karena hasil koreksi anda belum tersorting, Anda menjadi bingung untuk melakukan ranking terhadap hasil tersebut sehingga anda berencana mengubah hasil nilai tersebut menjadi tersorting. Anda kemudian menyimpannya ke dalam file asistenout.txt yang bertipe text agar dapat dilihat di waktu lain. Buatlah program yang membaca file asistenin.txt kemudian mengurutkan dari nilai terbesar ke terkecil dan mencetak hasilnya ke dalam asistenout.txt. Input : Pada file input asistenin.txt terdapat data berupa nama dan nilainya, setiap data menghabiskan 2 baris. Contoh file input sebagai berikut.

2. 3. 4.

dengklek 23 dewa 90 adit 34 erick 56 gusadi 67 catur 77 kajol 89 Output: Berupa isi file asistenout.txt Nilai Mata Kuliah Algoritma dan Pemrograman 1 2 3 4 5 6 7 dewa kajol catur gusadi erick adit dengklek 90 89 77 67 56 34 23

Petunjuk: Gunakan struct untuk mengelompokan data dan memudahkan operasi seperti contoh berikut: Struct mahasiswa { char nama [100]; int nilai; };

5. SOAL: 1.

Gunakan Sorting yang sudah di bahas di modul sebelumnya untuk melakukan rangking Buatlah flowchart dan pseudocode (notasi algoritama) dari program pada soal di bawah ini.

Buatlah sebuah sistem informasi data mahasiswa dari bahasa pemrograman C++. Program tersebut berisi NIM dan Nama Mahasiswa. Data pada program tersebut disimpan dalam sebuah file (file text) dimana file tersebut dapat ditempatkan pada drive manapun. Data dalam program tidak hilang jika program dimatikan dan dapat di-update terus menerus, selain itu program ini tidak memungkinkan ada pendoublean data mahasiswa (Gunakan searching untuk menentukan apakah data baru yang ingin ditambah sudah ada atau belum). Program Sistem Informasi tersebut diharapkan mampu untuk meciptakan sebuah file, membaca file dan mencetak sebuah file untuk dapat diupdate terus menerus Jawaban Dalam C++, digunakan string yg bertipe null terminated string, yaitu jenis string yang diakhiri oleh karakter null (\0), string merupakan kumpulan dari karakter, oleh karena itu jika kita akan mendeklarasikan variabel bertipe string, maka kita harus melebihkan lebar sebanyak satu karakter untuk posisi karakter null. Dalam mengisikan nilai ke variabel yang bertipe string, kita tidak perlu memasukkan karakter null secara manual, karena C++ secara otomatis akan menambahkannya. Terdapat beberapa fungsi siap pakai yang berguna untuk menyelesaikan masalah-masalah yang berkaitan dengan string. Untuk menggunakan fungsi-fungsi tersebut kita harus mendaftarkan file header string.h (untuk C++ lama) atau <cstring> (untuk C++ standar). Dalam pembuatan sebuah program kerap kali kita dituntut untuk melakukan perubahan terhadap format string, misalnya mengubah string menjadi huruf kapital ataupun sebaliknya. Untuk melakukan hal ini, C++ telah menyediakan dua buah fungsi, yaitu strlwr ( ) dan strupr ( ). - Fungsi strlwr ( ) Bentuk umum dari fungsi strlwr ( ) dapat dilihat dibawah ini. char* strlwr (char* S); fungsi ini akan mengubah string yang tersimpan dalam variabel S menjadi huruf kecil. - Fungsi strupr ( ) Bentuk umum dari fungsi strupr ( ) dapat dilihat dibawah ini. char* strupr (char* S);

4.3 1.

fungsi ini akan mengubah string yang tersimpan dalam variabel S menjadi huruf kapital.

Terdapat banyak cara dalam melakukan konversi dengan C++. Cara konversi dari string ke tipe lainya (untuk konversi ke string, disarankan untuk menggunakan objek format ( ) dari class CString karena lebih fleksibel dan mudah untuk semua tipe data) . String to integer

atoi() _wtoi() atol () _wtol()

: string ke int : string ke int : string ke long int : string ke long int

String to double

atof () : string ke double _wtof() : string ke double

All to string - Format(%specifier,data) Untuk specifier :


c : untuk tipe char d atau I : untuk tipe integer e atau E : notasi scientific f atau g atau G : untuk tipe double atau float o : untuk bilangan octal s : untuk tipe string u : untuk unsign integer x atau X : untuk tipe hexa decimal p : untuk pointer n : menghasilkan kosong

2.

Untuk melakukan operasi input file digunakan objek ifstream dan untuk operasi output file digunakan objek ofstream. Kedua objek tersebut berada pada header file fstream.h. operasi dasar pada file pada dasarnya terbagi menjadi tiga tahap yaitu : Membuka atau mengaktifkan File Melaskanakan proses File Menutup File

a. Membuka File Sebelum suatu file dapat diproses, file harus dibuka terlebih dahulu. Untuk itu kita perlu mendefinisikan obyek file. Salah satu bentuk pernyataan yang diperlukan/syntaknya antara lain :
ofstream nama_obyek ;

ofstream digunakan untuk mendefinisikan nama objek yang nantinya akan digunakan untuk membuka file (dgn file header fstream.h) penulisan pada program nya :
ofstream simpan;

Setelah suatu objek file diciptakan, untuk membuka file dapat dilakukan dengan cara berikut ini :
Nama_object.open (nama_file);

Berikut penulisan pada program :


simpan.open (file.txt);

keterangan : File keluaran adalah nama objek file. file.TXT adalah nama file yang akan disimpan pada disk. b. Menulis File salah satu jenis pemprosesan pada file adalah menulis atau merekam data ke sebuah file. Syntaknya yaitu :
Nama object<<statement<<endl;

contoh penulisan pada program :


simpan<< belajar file C++ <<endl;

c. Menutup File Setelah pemrosesan file berakhir, file perlu ditutup. Langkah ini dilakukan dengan memanggil perintah fungsi anggota yang bernama close( )
Nama_object.close();

merupakan pernyataaan untuk menutup file.

Contoh penulisan pada program :


simpan.close();

3.

Manfaat tipe data struct adalah untuk menyimpan paket atau sekumpulan data ke dalam satu buah nama variabel saja. Kumpulan data tersebut diikat sedemikian rupa menjadi satu. Kumpulan data di dalam sebuah struct bisa mempunyai tipe data dasar yang beraneka ragam. Kumpulan data dalam sebuah struct sangat dianjurkan membentuk sebuah kesatuan makna berkaitan dengan nama struct-nya. Misal, jika struct-nya bernama segitiga maka isi struct-nya antara lain: alas, tinggi, luas dan keliling. Konsepnya yang lebih lanjut dapat juga dalam sebuah struct terdapat struct lagi (nested struct). Contoh deklarasinya sbb: struct mhs { int NIM; char nama[20]; float IPK; } data[20]; Contoh di atas menunjukkan bahwa dibuat struct bernama mhs dengan isian data NIM, nama dan IPK. Sedangkan nama variabelnya adalah data. Dalam kasus tsb variabel data dibuat berupa array dengan ukuran 20. Artinya kita akan membuat array untuk menampung data struct mhs sebanyak 20. Konsep struct seringkali dikaitkan dengan array karena logikanya penyimpanan data itu tidak cukup satu item saja, tetapi lebih dari itu.

4. 5.