Selamat Siang Kali Ini Mr Stolid Ingin Memposting Coding/ Program C++ Pengelolaan Data Toko Komputer TxtKebetulan Baru-Baru Ini Mr Stolid Dapat Tugas Dari
Kampus Membuat Program C++ Pengelolaan Data Toko Komputer Txt Mengunakan Borland C++ Owh Iya Coding Ini Cuma dapat di gunakan Borland 5.2 aja ya :D. Oke Deh Gak Usah Panjang
Lebar Lagi Berikut
Codingnya :
#include <stdio.h>
#include <conio.h>
#include <dos.h>
#include <stdlib.h>
#include <iostream.h>
#include <iomanip.h>
#include <windows.h>
//deklarai fungsi
void buka();
void baca();
void cari2();
void tambah();
void tampil();
void cari();
void edit();
void hapus();
struct barang
{
char Barang[20];
int no,kb,Diskon, Harga, Jumbel, Totbay;
};
barang brg;
FILE *pf;
int menu;
char back2menu, jawab;
int i,j,nomor, record,record_ubah,hasil_baca, banding;
float z;
int tdkketemu;
int jmlbrg=1;;
long int ofset_byte;
int main(int argc, char *argv[])
{ do
{system("cls");
system("COLOR 9");
cout<<"\t\t\t\ PROGRAM TOKO KOPUTER"<<endl;
cout<<"\t\t\t\tMULIA ABADI"<<endl;
cout<<"==============================================================================="<<endl;
cout<<endl;
cout<<"\t\t\t\t\ MENU"<<endl;
cout<<"\t\t\t\ ======================"<<endl;
cout<<"\t\t\t\ 1.TAMBAH DATA BARANG"<<endl;
cout<<"\t\t\t\ 2.TAMPILKAN DATA"<<endl;
cout<<"\t\t\t\ 3.EDIT DATA"<<endl;
cout<<"\t\t\t\ 4.HAPUS DATA"<<endl;
cout<<"\t\t\t\ 5.Keluar"<<endl;
cout<<"\t\t\t\ ======================"<<endl;
printf("\t\t\t Pilih : ");scanf("%i",&menu);
switch(menu)
{
case 1 : tambah();break;
case 2 : tampil();break;;
case 3 : edit(); break;
case 4 : hapus(); break;
case 5 : exit(1);break;
}
printf("\n\n");
printf("\t\t\tTekan Y untuk kembali ke Main Menu : ");
back2menu=getche();
}
while((back2menu=='Y')||(back2menu=='y'));
system("PAUSE");
return 0;
}
void buka()
{
//Buka File
if((pf=fopen("data1.txt","at"))==NULL)
{
printf("Fatal Error : Data Tidak Dapat dibaca!\n");
exit(1);
}
}
void baca()
{
//baca File
if((pf=fopen("data1.txt","rt"))==NULL)
{
printf("Fatal Error : Data Tidak Dapat dibaca!\n");
exit(1);
}
}
void tambah()
{
clrscr();
buka();
FILE *pf2;
pf2 = fopen("printout1.txt","a");
//do
//{
char pil;
cout<<"\t\t\t\ MENU"<<endl;
cout<<"\t\t\t\ TAMBAH DATA BARANG"<<endl;
cout<<"==============================================================================="<<endl;
cout<<"==============="<<endl;
cout<<"Daftar Barang |"<<endl;
cout<<"==============="<<endl;
cout<<" \t\t\t Data ke-"<<jmlbrg<<endl;
cout<<" \t\t==================================================="<<endl;
cout<<" \t\t| Kode Barang | Nama Barang | Harga Satuan |"<<endl;
cout<<" \t\t=================================================="<<endl;
cout<<" \t\t| 1 | Laptop Acer 722 | Rp 2900000 |"<<endl;
cout<<" \t\t| 2 | Printer | Rp 3500000 |"<<endl;
cout<<" \t\t| 3 | Proyektor | Rp 5600000 |"<<endl;
cout<<" \t\t| 4 | Modem TP-LINK | Rp 500000 |"<<endl;
cout<<" \t\t| 5 | LCD Monitor | Rp 500000 |"<<endl;
cout<<" \t\t| 6 | Speaker | Rp 250000 |"<<endl;
cout<<" \t\t| 7 | Komputer | Rp 5200000 |"<<endl;
cout<<" \t\t=================================================="<<endl<<endl;
cout<<" \t\tKode Barang : ";cin>>brg.kb;
switch(brg.kb)
{
case 1:
strcpy(brg.Barang,"Laptop Acer 722");
brg.Harga=2900000;
break;
case 2:
strcpy(brg.Barang,"Printer");
brg.Harga=3500000;
break;
case 3:
strcpy(brg.Barang,"Proyektor");
brg.Harga=5600000;
break;
case 4:
strcpy(brg.Barang,"Modem TP-LINK ");
brg.Harga=500000;
break;
case 5:
strcpy(brg.Barang,"LCD Monitor");
brg.Harga=500000;
break;
case 6:
strcpy(brg.Barang,"Speaker");
brg.Harga=250000;
break;
case 7:
strcpy(brg.Barang,"Komputer");
brg.Harga=5200000;
break;
default:
strcpy(brg.Barang,"Kode Salah!");
brg.Harga=0;
break;
}
cout<<" \t\tNama Barang : "<<brg.Barang<<endl;
cout<<" \t\tHarga Barang : Rp "<<brg.Harga<<endl;
cout<<" \t\tJumlah Barang : ";cin>>brg.Jumbel;
if (brg.Jumbel>=10)
{
brg.Diskon=brg.Harga*brg.Jumbel*0.2;
}
else
{
if (brg.Jumbel<=10)
{
brg.Diskon=0;
}
}
cout<<" \t\tDiskon : Rp "<<brg.Diskon<<endl;
brg.Totbay=brg.Harga*brg.Jumbel-brg.Diskon;
cout<<" \t\tTotal Bayar : Rp "<<brg.Totbay;
cout<<endl<<endl;
cout<<" \t\t\t Tambah Data Lagi(Y/T) : ";cin>>pil;
if(pil=='Y' || pil=='y')
if (pf2 != NULL)
{
cout<<" \t\tKode Barang : ";cin>>brg.kb;
switch(brg.kb)
{
case 1:
strcpy(brg.Barang,"Laptop Acer 722");
brg.Harga=2900000;
break;
case 2:
strcpy(brg.Barang,"Printer");
brg.Harga=3500000;
break;
case 3:
strcpy(brg.Barang,"Proyektor");
brg.Harga=5600000;
break;
case 4:
strcpy(brg.Barang,"Modem TP-LINK ");
brg.Harga=500000;
break;
case 5:
strcpy(brg.Barang,"LCD Monitor");
brg.Harga=500000;
break;
case 6:
strcpy(brg.Barang,"Speaker");
brg.Harga=250000;
break;
case 7:
strcpy(brg.Barang,"Komputer");
brg.Harga=5200000;
break;
default:
strcpy(brg.Barang,"Kode Salah!");
brg.Harga=0;
break;
}
cout<<" \t\tNama Barang : "<<brg.Barang<<endl;
cout<<" \t\tHarga Barang : Rp "<<brg.Harga<<endl;
cout<<" \t\tJumlah Barang : ";cin>>brg.Jumbel;
if (brg.Jumbel>=10)
{
brg.Diskon=brg.Harga*brg.Jumbel*0.2;
}
else
{
if (brg.Jumbel<=10)
{
brg.Diskon=0;
}
}
cout<<" \t\tDiskon : Rp "<<brg.Diskon<<endl;
brg.Totbay=brg.Harga*brg.Jumbel-brg.Diskon;
cout<<" \t\tTotal Bayar : Rp "<<brg.Totbay;
cout<<" \t\t\t Tambah Data Lagi(Y/T) : ";cin>>pil;
}
brg.no=record;
fwrite(&brg,sizeof(brg),1,pf);
fclose(pf);
}
void tampil()
{
clrscr();
baca();
nomor=1;
cout<<" ================================== "<<endl;
cout<<" --== LAPORAN JUAL BELI BARANG ==-- "<<endl;
cout<<" ================================== "<<endl;
cout<<" ------------------------------------------------------------------------------"<<endl;
cout<<"|No| Kode | Nama Barang | Harga | Jumlah | Diskon | Total Bayar "<<endl;
cout<<" ------------------------------------------------------------------------------"<<endl;
for(;;)
{
fread(&brg,sizeof(brg),1,pf);
if(feof(pf))break;
cout<<setiosflags(ios::left)<<"| "<<setw(1)<<nomor++;
cout<<"| "<<setiosflags(ios::left)<<setw(4)<<brg.kb;
cout<<"| "<<setiosflags(ios::left)<<setw(16)<<brg.Barang;
cout<<"| "<<setiosflags(ios::left)<<"Rp."<<setw(8)<<brg.Harga;
cout<<"| "<<setiosflags(ios::left)<<setw(6)<<brg.Jumbel;
cout<<"| "<<setiosflags(ios::left)<<"Rp."<<setw(8)<<brg.Diskon;
cout<<"| "<<setiosflags(ios::left)<<"Rp."<<setw(10)<<brg.Totbay<<endl;
}
//tutup File
fclose(pf);
cout<<"------------------------------------------------------------------------------"<<endl;
}
void baca_edit()
{
if((pf=fopen("data1.txt","rt+"))==NULL)
{
printf("Fatal Error : Data Tidak Dapat dibaca!\n");
exit(1);
}
}
void edit(){
clrscr();
baca_edit();
int pos = 0 * sizeof(brg);
rewind(pf);
cout<<" \t\tMasukan Kode Barang : ";cin>>brg.kb;
tdkketemu=1;
while(!feof(pf))
{
if(brg.kb)
{
tdkketemu=0;
cout<<"Barang Di Temukan";
record_ubah=brg.no;
ofset_byte=(record_ubah-1)*sizeof(brg);
fseek(pf,ofset_byte, SEEK_SET);
hasil_baca=fread(&brg,sizeof(brg),1,pf);
brg.kb ;
if(hasil_baca==0)
{
cout<<" Kode Barang Tidak Ada !";
}
else
{
printf(" MENU \n");
printf(" EDIT BARANG \n");
printf(" --------------------------------------- \n");
cout<<" Kode Barang : "<<brg.kb<<endl;
cout<<" Nama Barang : "<<brg.Barang<<endl;
cout<<" Harga Barang : "<<brg.Harga<<endl;
cout<<" Jumblah Barang : "<<brg.Jumbel<<endl;;
cout<<" Diskon Di Peroleh : "<<brg.Diskon<<endl;
cout<<" Total Bayar : "<<brg.Totbay<<endl;
printf(" --------------------------------------- \n");
printf("\n\n");
printf("----------------------------------------------------\n");
printf(" Data Yang Akan Diubah\n");
printf("----------------------------------------------------\n");
cout<<" \t\tJumlah Barang : ";cin>>brg.Jumbel;
if (brg.Jumbel>=10)
{
brg.Diskon=brg.Harga*brg.Jumbel*0.2;
}
else
{
if (brg.Jumbel<=10)
{
brg.Diskon=0;
}
}
cout<<" \t\tDiskon : Rp "<<brg.Diskon<<endl;
brg.Totbay=brg.Harga*brg.Jumbel-brg.Diskon;
cout<<" \t\tTotal Bayar : Rp "<<brg.Totbay;
}
brg.no=record_ubah;
fseek(pf,ofset_byte,SEEK_SET);
fwrite(&brg,sizeof(brg),1,pf);
break;
}
else
{
fread(&brg,sizeof(brg),1,pf);
}
}
if(tdkketemu==1)
{
printf(" Data Tidak Ditemukan !");
}
//Tutup File
fclose(pf);
}
void hapus()
{
FILE *pfHapus;
long int pstr1, pstr2;
int banding;
long int reqkb;
do{
system("cls");
baca();
printf(" --------------------------------------------------------------\n");
printf(" ------------------------HAPUS DATA BARANG-----------------------\n");
printf(" --------------------------------------------------------------\n");
cout<<" \t\tKode Barang : ";cin>>reqkb;
tdkketemu=1;
while(!feof(pf))
{
if(reqkb==brg.kb)
{
tdkketemu=0;
system("cls");
printf("Musik Ditemukan!");
record_ubah=brg.no;
printf(" Data Musik \n");
printf(" Pencarian Musik \n");
printf(" --------------------------------------- \n");
cout<<" Kode Barang : "<<brg.kb<<endl;
cout<<" Nama Barang : "<<brg.Barang<<endl;
cout<<" Harga Barang : "<<brg.Harga<<endl;
cout<<" Jumblah Barang : "<<brg.Jumbel<<endl;;
cout<<" Diskon : "<<brg.Diskon<<endl;
cout<<" Total Bayar : "<<brg.Totbay<<endl;
printf(" --------------------------------------- \n");
brg.no=record_ubah;
for(;;){
fread(&brg, sizeof(brg), 1, pf);
if(feof(pf))break;
pstr1 = reqkb;
pstr2 = brg.kb;
if (pstr1==pstr2)
{
banding=0;
}else
{
banding=1;
}
if(banding != 0){
//open file
if((pfHapus = fopen("Temp1.txt", "at")) == NULL){
system("cls");
printf("File tidak dapat dibaca !!\n");
exit(1);
}
fwrite(&brg,sizeof(brg),1,pfHapus);
fclose(pfHapus);
}
}
fclose(pf);
//rename file temp dengan current name
remove("data1.txt");
rename("Temp1.txt", "data1.txt");
break;
}
else
{
fread(&brg,sizeof(brg),1,pf);
}
}
if(tdkketemu==1)
{
printf(" Data Barang Tidak Ditemukan !");
}
cout << "Data telah dihapus. \n";
printf("\n\n Mau menghapus data lagi (Y/T)");
jawab = getche();
}while (jawab=='Y'||jawab=='y');
getche();
}
0 Comments