Sei sulla pagina 1di 11

#include <process.

h>
#include <stdlib.h>
#include <ctype.h>
#include <graphics.h>
#include<dos.h>
#include<iomanip.h>
#define NORMAL 7
class library
{
private:
FILE *fp,*ft,*fe;
int sl;
long int recsize;
char another,choice;
struct LateFine
{
int roll,sno;
char name[30];
char code[15];
float amt;
}f;
struct student
{
int roll,sno,sl,dt,mn,yr;
char name[30];
char code[15];
}i,r,q;
struct book
{
int sno;
char name[30];
char auth[30];
char pub[25];
float price;
}b;
public:
void boxb(int r,int c,int r1,int c1,char m[]);
int menu(int col,int r,int c,int npara,char *pop[]);
void about();
void bookpurchage();
void booklist();
void bookissue();
void issuelist();
void bookreturn();
void returnlist();
void querybystd();
void querybybook();
void latefine();
void delreturn();
void modifyentry();
void flash();
};
// Function to get overview of project
void library::bookpurchage()

{
int temp=0;
fp = fopen ("RECORD.DAT","rb+");
if(fp == NULL)
{
fp = fopen ("RECORD.DAT","wb+");
if(fp == NULL)
{
puts("Can not open file");
exit(0);
}
}
recsize=sizeof(b);
fseek(fp,0,SEEK_END);
another='y';
rewind(fp);
while(fread(&b,recsize,1,fp)==1)
{
temp=b.sno;
}
while(another=='y')
{
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);cprintf("
[
");
textattr(7);
b.sno=temp+1;
temp++;
gotoxy(10,10);cout<<"BOOK_NO
: "<<b.sno;
flushall();
gotoxy(10,11);cout<<"BOOK_NAME
: ";
gets(b.name);
flushall();
gotoxy(10,12);cout<<"AUTHOR_NAME : ";
gets(b.auth);
flushall();
gotoxy(10,13);cout<<"PUBLICATION : ";
gets(b.pub);
flushall();
gotoxy(10,14);cout<<"PRICE
: ";
cin>>b.price;
flushall();
gotoxy(10,16);cout<<"Do you want to save(y/n): ";
another=getche();
if(another!='y')
temp--;
else
fwrite(&b,recsize,1,fp);
gotoxy(10,17);cout<<"Add another records(Y/N): ";
fflush(stdin);
another=getche();
}
clrscr();
return;
}

BOOKSS

void library::booklist()
{
int c=1;
fp = fopen ("RECORD.DAT","rb+");
recsize=sizeof(b);
rewind(fp);
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);
cprintf(" [
BOOK
]
textattr(7);
gotoxy(2,7);cout<<"BOOK_NO. BOOKS_NAME
CE ";

");
AUTHORPUBLICATION

gotoxy(2,8);cout<<"-----------------------------------------------";
while (fread (&b,recsize,1,fp) == 1)
{
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);
cprintf("
[
BOOKS
]
;
textattr(7);
gotoxy(2,8+c);
cprintf(" %-6d ",b.sno);
cprintf(" %-20.20s ",b.name);
cprintf(" %-18.18s ",b.auth);
cprintf(" %-15.15s",b.pub);
cprintf(" %9.2f ",b.price);
c++;
if(c>11)
{
c=1;
gotoxy(55,20);
cout<<"Press key to next";
getch();
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);cprintf("
[
BOOKS
]
");
textattr(7);
gotoxy(2,7);cout<<"BOOK_NO. BOOKS_NAME
AUTHORPUBLICATION
RICE ";

PRI

")

gotoxy(2,8);cout<<"----------------------------------------------------------------------------";
}
}
gotoxy(60,20);cout<<"End of List";
getch();

clrscr();
return;
}
int library::menu(int color,int r,int c,int npara,char *popup[])
{
int r1=r+(npara-1),k=0,i=0,j=1,r2=r;
textattr(color);gotoxy(c,r2);cprintf(popup[0]);
r2++;
textattr(919);
textcolor(7);
for(j=1;j<npara;j++,r2++)
{
gotoxy(c,r2);cprintf(popup[j]);
}
do
{
k=getch();
switch(k)
{
case 80 :
gotoxy(c,r);textattr(919);textcolor(7);cprintf(popup[i]);
r++;
i++;
if(r>r1)
{
r=r1-(npara-1);
i=0;
gotoxy(c,r);textattr(color);cprintf(popup[i]);
}
gotoxy(c,r);textattr(color);cprintf(popup[i]);
break;
case 72 :
gotoxy(c,r);textattr(919);textcolor(7);cprintf(popup[i]);
r--;
i--;
if(r<r1 -(npara-1))
{
r=r1;
i=npara-1;
gotoxy(c,r);textattr(color);cprintf(popup[i]);
}
gotoxy(c,r);textattr(color);cprintf(popup[i]);
break;
}
}while(k!=13);
return i+1;
}
void library::boxb(int r,int c,int r1,int c1,char m[])
{
int i;
if(m=="S")
{
gotoxy(c,r);printf("%c",218);
gotoxy(c1,r);printf("%c",191);
gotoxy(c,r1);printf("%c",192);
gotoxy(c1,r1);printf("%c",217);
for(i=c+1;i<c1;i++)
{

gotoxy(i,r);printf("%c",196);
gotoxy(i,r1);printf("%c",196);
}
for(i=r+1;i<r1;i++)
{
gotoxy(c,i);printf("%c",179);
gotoxy(c1,i);printf("%c",179);
}
}
else
{
gotoxy(c,r);printf("%c",201);
gotoxy(c1,r);printf("%c",187);
gotoxy(c,r1);printf("%c",200);
gotoxy(c1,r1);printf("%c",188);
for(i=c+1;i<c1;i++)
{
gotoxy(i,r);printf("%c",205);
gotoxy(i,r1);printf("%c",205);
}
for(i=r+1;i<r1;i++)
{
gotoxy(c,i);printf("%c",186);
gotoxy(c1,i);printf("%c",186);
}
}
return;
}
void library::flash()
{
boxb(2,1,5,79, "S");
boxb(6,1,20,79, "D");
boxb(21,1,24,79,"D");
textattr(697);
textcolor(692);
gotoxy(3,3);cprintf("
[LIBRARY INFORMATION SYSTEM]
");
textattr(697);textattr(693);
gotoxy(3,22);cprintf(" Designed By :- Wisdom Emmanuels");
gotoxy(3,23);cprintf("
B.C.A.(Hons.), LPU, JALANDHAR");
textattr(7);
}
void library::about()
{
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);cprintf("
[ERVIEW
]
");
textattr(919);
gotoxy(10,7) ;textcolor(4);cprintf("This L.I.S. Package has beendesigned to ma
intain computerised ");
gotoxy(10,8) ;textcolor(2);cprintf("Library work very easily by alibrarian. It
can run under DOS/ ");
gotoxy(10,9) ;textcolor(5);cprintf("Windows Environment.");
gotoxy(10,10);textcolor(3);cprintf("............................................

................. ");
gotoxy(10,11);textcolor(6);cprintf("WISDOM EMMANUELS
");
gotoxy(10,12);cprintf("
B.C.A.(Hons.)");
gotoxy(10,13);cprintf("
LPU, JALANDHAR");
gotoxy(10,14);puts("
*******************");
textcolor(2);
gotoxy(10,15);cprintf("
Email
talk2dmanuels@yahoo.com");
gotoxy(10,16);textcolor(3);cprintf("............................................
................. ");
textattr(7);textbackground(3);textcolor(5);
gotoxy(55,20);textcolor(804);cprintf("Press any key to Next ");
// sound(2100);
// delay(1000);
getch();
// nosound();
textattr(7);
clrscr();
}
void library::bookissue()
{
int temp=0,tem=0;
fp = fopen ("BISSUE.DAT","rb+");
if(fp == NULL)
{
fp = fopen ("BISSUE.DAT","wb+");
if(fp == NULL)
{
puts("Can not open file");
exit(0);
}
}
ft=fopen("RECORD.DAT","rb");
recsize=sizeof(i);
fseek(fp,0,SEEK_END);
another='y';
choice='y';
rewind(fp);
while(fread(&i,recsize,1,fp)==1)
temp=sl;
while(another=='y')
{
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);cprintf("
");
textattr(7);
sl=temp+1;
temp++;
flushall();
gotoxy(10,11);cout<<"BOOK_NO
: ";
cin>>i.sno;
flushall();
rewind(ft);
while(fread(&b,sizeof(b),1,ft)==1)
{

BOOKS

if (i.sno==b.sno)
{
tem=i.sno;
rewind(fp);
while(fread(&i,recsize,1,fp)==1)
{
if(tem==i.sno)
{
gotoxy(2,7);cout<<"----------------------------------------------------------------------------";
gotoxy(2,8);cout<<"BOOK_NO: "<<i.sno<<" IS NOT PRESENT ! PLEAS EENTRERN
EW BOOK NUMBER";
gotoxy(2,9);cout<<"----------------------------------------------------------------------------";
goto a;
}
}
i.sno=tem;
gotoxy(2,7);cout<<"BOOK NO. BOOK's NAME
AUTHOR PUBLICATION
PRICE ";
gotoxy(2,8);cout<<"----------------------------------------------------------------------------";
gotoxy(2,9);printf(" %-6d %-20.20s %-18.18s %-15.15s%9.2f",b.sno,b.name
,b.auth,b.pub,b.price);
gotoxy(2,10);cout<<"----------------------------------------------------------------------------";
gotoxy(10,12);cout<<"STUDENT_ROLL : ";
cin>>i.roll;
flushall();
gotoxy(10,13);cout<<"STUDENT_NAME : ";
gets(i.name);
flushall();
gotoxy(10,14);cout<<"COURSE_CODE : ";
gets(i.code);
flushall();
gotoxy(10,15);cout<<"ISSUE_DATE
: ";
cin>>i.dt;
gotoxy(28,15);cout<<"-";cin>>i.mn;
gotoxy(31,15);cout<<"-";cin>>i.yr;
flushall();
gotoxy(10,17);cout<<"Do you want to save(Y/N): ";
choice=getche();
if(choice=='y')
fwrite(&i,recsize,1,fp);
goto a;
}
}
gotoxy(2,7);cout<<"----------------------------------------------------------------------------";
gotoxy(2,8);cout<<"BOOK_NO: "<<i.sno<<" IS NOT IN LIBRARY ! ";
gotoxy(2,9);cout<<"----------------------------------------------------------------------------";
a:
gotoxy(10,18);cout<<"Issue Another Book (Y/N): ";
fflush(stdin);

another=getche();
}
clrscr();
fclose(ft);
fclose(fp);
return;
}
void library::bookreturn()
{
int temp=0;
FILE *fm,*ff;
fp = fopen ("BRETURN.DAT","rb+");
if(fp == NULL)
{
fp = fopen ("BRETURN.DAT","wb+");
if(fp == NULL)
{
puts("Can not open file");
exit(0);
}
}
ft=fopen("RECORD.DAT","rb");
fe=fopen ("BISSUE.DAT","rb+");
recsize=sizeof(r);
fseek(fp,0,SEEK_END);
another='y';
choice='y';
rewind(fp);
while(fread(&r,recsize,1,fp)==1)
{
temp=r.sl;
}
while(another=='y')
{
textbackground(9);
clrscr();
flash();
textattr(697);
textcolor(692);
gotoxy(3,4);cprintf("
[
");
textattr(7);
r.sl=temp+1;
temp++;
gotoxy(10,11);cout<<"BOOK_NO
: ";
cin>>r.sno;
flushall();
rewind(ft);
while(fread(&b,sizeof(b),1,ft)==1)
{
if (r.sno==b.sno)
{
rewind(fe);
while(fread(&i,sizeof(i),1,fe)==1)
{
if(r.sno==i.sno)
{
gotoxy(2,7);
cout<<"BOOK_NO BOOKS_NAME
ISSUED TO

BOOKS

ROLLC_CODE

ISSU

E_DATE ";
gotoxy(2,8);cout<<"----------------------------------------------------------------------------";
gotoxy(2,9);cprintf(" %-6d %-17.17s %-16.16s %-5d %-8.8s%02d-%02d-%
02d ",i.sno,b.name,i.name,i.roll,i.code,i.dt,i.mn,i.yr);
gotoxy(2,10);cout<<"----------------------------------------------------------------------------";
gotoxy(10,12);cout<<"STUDENT_ROLL : ";
cin>>r.roll;
flushall();
gotoxy(10,13);cout<<"STUDENT_NAME : ";
gets(r.name);
flushall();
gotoxy(10,14);cout<<"COURSE_CODE : ";
gets(r.code);
flushall();
gotoxy(10,15);cout<<"RETURN_DATE : ";
cin>>r.dt;
gotoxy(28,15);cout<<"-";cin>>r.mn;
gotoxy(31,15);cout<<"-";cin>>r.yr;
flushall();
/*
int total,tmp=0,d=0,m=0,y=0;
float fine;
ff = fopen ("FINE.DAT","rb+");
if(ff == NULL)
{
ff = fopen ("FINE.DAT","wb+");
if(ff == NULL)
{
puts("File Not Found");
exit(0);
}
}
if (r.dt>=i.dt)
{
d=r.dt-i.dt;
if(r.mn>=i.mn)
{
m=r.mn-i.mn;
y=r.yr-i.yr;
}
else
{
r.yr=r.yr-1;
r.mn=r.mn+12;
m=r.mn-i.mn;
y=r.yr-i.yr;
}
}
else
{
r.mn=r.mn-1;
r.dt=r.dt+30;
d =r.dt-i.dt;
if(r.mn>=i.mn)

{
m=r.mn-i.mn;
y=r.yr-i.yr;
}
else
{
r.yr=r.yr-1;
r.mn=r.mn+12;
m=r.mn-i.mn;
y=r.yr-i.yr;
}
}
total=d+(m*30)+(y*12*30);
if (total>=7)
{
total=total-7;
fine=total*1.00;
recsize=sizeof(f);
fseek(ff,0,SEEK_END);
rewind(ff);
while(fread(&f,recsize,1,ff)==1)
{
tmp=f.sno;
}
f.sno=tmp+1;
f.roll=i.roll;
strcpy(f.name,i.name);
strcpy(f.code,i.code);
f.amt=fine;
fwrite(&f,recsize,1,ff);
}
*/
gotoxy(10,16);cout<<"Do you want to save(Y/N): ";
choice=getche();
if(choice=='y')
{
fwrite(&r,recsize,1,fp);
fm=fopen("TEMP.DAT","wb");
rewind(fe);
while(fread(&i,sizeof(i),1,fe)==1)
{
if(r.sno!=i.sno)
fwrite(&i,sizeof(i),1,fm);
}
fclose(fe);
fclose(fm);
remove("BISSUE.DAT");
rename("TEMP.DAT","BISSUE.DAT");
fe=fopen("BISSUE.DAT","rb+");
}
goto a;
}
}
}
}
gotoxy(2,7);cout<<"----------------------------------------------------------------------------";
gotoxy(2,8);cout<<"BOOK_NO: "<<r.sno<<" IS NOT ISSUED BOOK ! ";

gotoxy(2,9);cout<<"----------------------------------------------------------------------------";
a:
gotoxy(10,17);cout<<"Return Another Book (Y/N): ";
fflush(stdin);
another=getche();
}

Potrebbero piacerti anche