#include <iostream>
#include <conio.h>
#include <windows.h>
#include <string.h>
#include <fstream>
using namespace std;
typedef struct data
{
char nama[100];
char NIM[100];
int nilai;
};
fstream f;
data mhs;
string pilih;
string pilih1;
void insert()
{
f.open("data.bin", fstream::out | ios::app);
cout << "\nMasukkan Data Mahasiswa : \n";
cout << "\tNAMA : ";
cin.sync();
cin.getline(mhs.nama, 100);
cout << "\tNIM : ";
cin.sync();
cin.getline(mhs.NIM, 100);
cout << "\tNilai : ";
cin >> mhs.nilai;
f.write((char *) &mhs, sizeof(data));
f.close();
cout << "\n Masih Mau Input Data ? [Y/N] ";
cin >> pilih;
if (pilih=="y" || pilih=="Y")
{
insert();
}
}
void update ()
{
string jawab;
char nama[100];
char nim[100];
bool cek;
cout << "Menu : \n\n";
cout << "1. Cari Berdasarkan NAMA\n";
cout << "2. Cari Berdasarkan NIM\n\n";
cout << "\n\nPilihan : ";
cin >> jawab;
if (jawab=="1")
{
cout << "\n\nMasukkan Nama : ";
cin >> nama;
f.open("data.bin");
while(f.read(( char *)& mhs,sizeof (data)))
{
if(strcmp(mhs.nama, nama) == 0)
{
cek = true;
break;
}
else
{
cek = false;
}
}
if (cek==true)
{
cout << "Ada!"<<endl;
cout <<" nama: "<<mhs.nama<<endl;
cout <<" nim: "<<mhs.NIM<<endl;
cout <<" nilai:"<<mhs.nilai<<endl;
cout <<" mengupdate data"<<endl;
cout<<" masukan nama: ";
cin>>mhs.nama;
cout<<"masukan nim: ";
cin>>mhs.NIM;
cout<<"masukan nilai:";
cin>>mhs.nilai;
strcpy(mhs.nama, nama);
f.write((char *) &mhs, sizeof(data));
}
else
{
cout << "Tidak Ada Data !!";
}
f.close();
}
}
void view ()
{
int j = 1;
f.open("data.bin", fstream::in);
while (f.read((char *) &mhs, sizeof(data)))
{
cout << "\nData Mahasiswa ke-"<<j++<<": \n";
cout << "\tNAMA : "<<mhs.nama<< "\n";
cout << "\tNIM : "<<mhs.NIM<<"\n";
cout << "\tNilai : "<<mhs.nilai<<"\n";
}
f.close();
}
int main ()
{
menu:
system("color 2f");
system("cls");
cout<<"*********************"<<endl;
cout<<"Nama : Rizky febryan*"<<endl;
cout<<"kelas: D3IF-38-02 *"<<endl;
cout<<"NIM : 6706140170 *"<<endl;
cout << "===================\n\n";
cout << "1. Insert Data Mahasiswa\n";
cout << "2. Update Data Mahasiswa\n";
cout << "3. Delete Data Mahasiswa\n";
cout << "4. View Data Mahasiswa\n";
cout << "5. Keluar\n";
cout << "\n pilihan: ";
cin >>pilih;
if (pilih=="1")
{
system ("cls");
cout << "Insert Data Mahasiswa : \n";
cout << "=======================\n\n";
insert();
goto menu;
}
else if (pilih=="2")
{
system ("cls");
cout << "update Data Mahasiswa : \n";
cout << "=======================\n\n";
update();
goto menu;
}
else if(pilih=="3")
{
system("cls");
cout<< "delete data mahasiswa: \n";
cout<< "apakah anda yakin akan menghapus: [Y/N]?";
cin>>pilih1;
if (pilih1=="Y" || pilih1=="y")
{
system("del data.bin");
cout << "\n\nDATA BERHASIL DIHAPUS !!!";
getch();
goto menu;
}
else
{
goto menu;
}
}
else if (pilih=="4")
{
system ("cls");
cout << "View Data Mahasiswa : \n";
cout << "=======================\n\n";
view();
getch();
goto menu;
}
else if (pilih=="5")
{
exit(0);
}
getch ();
return 0;
}