Professional Documents
Culture Documents
NIM : 1104505066
1.2
1.3
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. b. Fungsi strupr ( ) Bentuk umum dari fungsi strupr ( ) dapat dilihat dibawah ini. char* strupr (char* S); 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 a. b. c. d. atoi() : string ke int _wtoi() : string ke int atol () : string ke long int _wtol() : string ke long int
String to double a. atof () : string ke double b. _wtof() : string ke double All to string - Format(%specifier,data)
Untuk specifier : a. b. c. d. e. f. g. h. i. j. 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. Penggunaan Fstream, ofstream,ifstream 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 : 1. Membuka atau mengaktifkan File 2. Melaskanakan proses File 3. 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 :
ofstream nama_obyek ;
ofstream digunakan untuk mendefinisikan nama objek yang nantinya akan digunakan untuk membuka file berikut penulisan pada program :
ofstream simpan;
Setelah suatu objek file diciptakan, untuk membuka file dapat dilakukan dengan cara berikut ini :
Nama_object.open (nama_file);
keterangan : a. File keluaran adalah nama objek file. b. 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 file.
Nama object<<statement<<endl;
c. Menutup File
Setelah pemrosesan file berakhir, file perlu ditutup. Langkah ini dilakukan dengan memanggil fungsi anggota bernama close( ) merupakan pernyataaan untuk menutup file.
Nama_object.close();
3.
Struct dalam pemrograman Bahasa C++ Manfaat tipe data struct secara umum adalah untuk menyimpan paket (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. Listing Program #include <iostream.h> #include <iomanip.h> #include <conio.h> #include <stdlib.h>
#include <windows.h> #include <fstream.h> char*namafile="D: datamahasiswa.txt"; char str[20]; int opsi; struct datamahasiswa { char nim[20],nama[20]; } mhs; int cek(char str[]) { int i, panjang; panjang = strlen(str); for(i=0;i<panjang;i++) { if((i==0)&&(str[i]=='-')) i++; if(!isdigit(str[i])) { cout<<"Input tidak boleh berupa karakter !"; getch(); return 0; } } return 1; } void menambahkanData() { char pil='y'; cout << "Masukan Nim Anda : "; cin >> mhs.nim; cout << "Masukan Nama Anda: " << endl; cin >> mhs.nama; cout << "Ingin Menambahkan File(y/n)? "; cin >> pil; if (pil=='y') { ofstream dataBaru; dataBaru.open("D: datamahasiswa.txt",ios::app); dataBaru.write((char*)&mhs,sizeof(mhs)); dataBaru.close(); } getch; }
void cariData() { char *tmu; ifstream myfile; myfile.open (namafile); if (myfile.good()) { while (! myfile.eof()){ cari: myfile.getline(mhs.nama,20); tmu = strstr(mhs.nama, mhs.nim); if (tmu) // jika ketemu, tampilkan { cout << tmu << endl; cout << "DATA YANG ANDA CARI SUDAH KAMI TEMUKAN !!!!" << endl; getch(); } } cout << "MAAF, DATA YANG ANDA CARI TIDAK KAMI TEMUKAN :(."; myfile.close(); getch(); } } void mengeditData() { char pil='y'; cout << "Inputkan Nama dan NIM anda: " << endl; cout << "Masukan NIM Anda : "; cin >> mhs.nim; cout << "Masukan Nama Anda : "; cin >> mhs.nama; cout << "Ingin mengedit file(y/n)? "; cin >> pil; if (pil=='y') { ofstream edit; edit.open(namafile,ios::trunc); edit.write((char*)&mhs,sizeof(mhs)); edit.close(); } getch; } void hapusData() {
ofstream hapus; hapus.open(namafile,ios::trunc); hapus << " "; hapus << " "; cout<<"Data telah terhapus !!!"<<endl; hapus.close(); } int main() { int awal; awal: clrscr(); cout << "============PROGRAM MAHASISWA=========="<<endl<<endl; cout << "1. Menginputkan Data Baru" <<endl; cout << "2. Mencari Data " <<endl; cout << "3. Mengedit Data " <<endl; cout << "4. Menghapus Data " <<endl<<endl; cout << "Masukkan pilihan anda : "; do{ cin >> str; } while (!cek(str)); opsi = atoi (str); if ((opsi>6)||(opsi<1)) goto awal; getch; switch(opsi) { case 1: menambahkanData(); break; case 2: cariData(); break; case 3: mengeditData(); break; case 4: hapusData(); break; } getch(); }
DATA