Project
Project
BARRACKPORE-700120
SUPERMARKET BILLING
SYSTEM
Page | 1
CERTIFICATE
Page | 2
ACKNOWLEDGEMENT
Page | 3
Page | 4
CONTENTS
Page | 5
PROJECT DESCRITPTION
Page | 6
HEADER FILE DESCRIPTION
Page | 7
DATA DICTIONARY
CLASS “product”
VARIABLE DECSCRIPTION
FUNCTION DESCRIPTION
Page | 8
6 public modify_product() void to modify a record
7 public delete_product() void to delete a record
8 public menu() void to display all products’
price list
9 public place_order() void to place order and
generating bill for
Products
10 public intro() void introduction function
11 public admin_menu() void administrator menu
function
12 public main() void main function of the
program
SOURCE CODE
//*******************************************************
********
//*******************************************************
*********
#include<conio.h>
#include<stdio.h>
#include<process.h>
#include<fstream.h>
//*******************************************************
********
//*******************************************************
*********
Page | 9
class product
int pno;
char name[50];
float price,qty,tax,dis;
public:
void create_product()
cin>>pno;
gets(name);
cin>>price;
cin>>dis;
void show_product()
Page | 10
puts(name);
cout<<"\nDiscount : "<<dis;
int retpno()
{return pno;}
float retprice()
{return price;}
char* retname()
{return name;}
int retdis()
{return dis;}
//*******************************************************
********
//*******************************************************
*********
fstream fp;
product pr;
//*******************************************************
Page | 11
********
//*******************************************************
*********
void write_product()
fp.open("Shop.dat",ios::out|ios::app);
pr.create_product();
fp.write((char*)&pr,sizeof(product));
fp.close();
getch();
//*******************************************************
********
//*******************************************************
*********
void display_all()
clrscr();
Page | 12
fp.open("Shop.dat",ios::in);
while(fp.read((char*)&pr,sizeof(product)))
pr.show_product();
cout<<"\n\n====================================\n";
getch();
fp.close();
getch();
//*******************************************************
********
//*******************************************************
*********
void display_sp(int n)
int flag=0;
fp.open("Shop.dat",ios::in);
while(fp.read((char*)&pr,sizeof(product)))
if(pr.retpno()==n)
Page | 13
{
clrscr();
pr.show_product();
flag=1;
fp.close();
if(flag==0)
getch();
//*******************************************************
********
//*******************************************************
*********
void modify_product()
int no,found=0;
clrscr();
Page | 14
cin>>no;
fp.open("Shop.dat",ios::in|ios::out);
if(pr.retpno()==no)
pr.show_product();
pr.create_product();
int pos=-1*sizeof(pr);
fp.seekp(pos,ios::cur);
fp.write((char*)&pr,sizeof(product));
found=1;
fp.close();
if(found==0)
getch();
Page | 15
//*******************************************************
********
//*******************************************************
*********
void delete_product()
int no;
clrscr();
cout<<"\n\n\n\tDelete Record";
cin>>no;
fp.open("Shop.dat",ios::in|ios::out);
fstream fp2;
fp2.open("Temp.dat",ios::out);
fp.seekg(0,ios::beg);
while(fp.read((char*)&pr,sizeof(product)))
if(pr.retpno()!=no)
fp2.write((char*)&pr,sizeof(product));
Page | 16
}
fp2.close();
fp.close();
remove("Shop.dat");
rename("Temp.dat","Shop.dat");
getch();
//*******************************************************
********
//*******************************************************
*********
void menu()
clrscr();
fp.open("Shop.dat",ios::in);
if(!fp)
Page | 17
File";
getch();
exit(0);
cout<<"\n\n\t\tProduct MENU\n\n";
cout<<"==================================================
==\n";
cout<<"P.NO.\t\tNAME\t\tPRICE\n";
cout<<"==================================================
==\n";
while(fp.read((char*)&pr,sizeof(product)))
cout<<pr.retpno()<<"\t\t"<<pr.retname()<<"\t\t"<<pr.retprice()<<end
l;
fp.close();
//*******************************************************
********
//*******************************************************
Page | 18
*********
void place_order()
int order_arr[50],quan[50],c=0;
float amt,damt,total=0;
char ch='Y';
menu();
cout<<"\n============================";
cout<<"\n============================\n";
do{
cin>>order_arr[c];
cin>>quan[c];
c++;
cin>>ch;
}while(ch=='y' ||ch=='Y');
cout<<"\n
Page | 19
\n********************************INVOICE****************
********\n";
discount\n";
for(int x=0;x<=c;x++)
fp.open("Shop.dat",ios::in);
fp.read((char*)&pr,sizeof(product));
while(!fp.eof())
if(pr.retpno()==order_arr[x])
amt=pr.retprice()*quan[x];
damt=amt-(amt*pr.retdis()/100);
cout<<"\n"<<order_arr[x]<<"\t"<<pr.retname()
<<"\t"<<quan[x]<<"\t\t"<<pr.retprice()<<"\t"<<amt<<"\t\t"<<damt;
total+=damt;
fp.read((char*)&pr,sizeof(product));
fp.close();
Page | 20
}
cout<<"\n\n\t\t\t\t\tTOTAL = "<<total;
getch();
//*******************************************************
********
// INTRODUCTION FUNCTION
//*******************************************************
*********
void intro()
clrscr();
gotoxy(31,11);
cout<<"SUPER MARKET";
gotoxy(35,14);
cout<<"BILLING";
gotoxy(35,17);
cout<<"PROJECT";
getch();
Page | 21
//*******************************************************
********
//*******************************************************
*********
void admin_menu()
clrscr();
char ch2;
cout<<"\n\n\n\tADMIN MENU";
cout<<"\n\n\t1.CREATE PRODUCT";
cout<<"\n\n\t3.QUERY ";
cout<<"\n\n\t4.MODIFY PRODUCT";
cout<<"\n\n\t5.DELETE PRODUCT";
ch2=getche();
switch(ch2)
Page | 22
case '1': clrscr();
write_product();
break;
case '3':
int num;
clrscr();
cin>>num;
display_sp(num);
break;
getch();
default:cout<<"\a";admin_menu();
//*******************************************************
********
Page | 23
// THE MAIN FUNCTION OF PROGRAM
//*******************************************************
*********
void main()
char ch;
intro();
do
clrscr();
cout<<"\n\n\n\tMAIN MENU";
cout<<"\n\n\t01. CUSTOMER";
cout<<"\n\n\t02. ADMINISTRATOR";
cout<<"\n\n\t03. EXIT";
ch=getche();
switch(ch)
place_order();
getch();
Page | 24
break;
break;
case '3':exit(0);
default :cout<<"\a";
}while(ch!='3');
//*******************************************************
********
// END OF PROJECT
Page | 25
OUTPUT
Page | 26
Page | 27
Page | 28
BIBLIOGRAPHY
Websites visited:
1. cplusguide.com
2. logicncode.org
Page | 29
Page | 30