Report Card making BY Mitul Patel
-
Upload
mitul-patel -
Category
Leadership & Management
-
view
236 -
download
10
Transcript of Report Card making BY Mitul Patel
A Project Report OnREPORT CARD MAKING
Computer Science Investigatory Project AISSE 2015-2016
Submitted ByMITUL M PATEL
Class : XII Under the Guidance of
Mr. SANJAY PARMAR PGT (Computer Science)
Department of Computer Science.
Department of Computer Science
C E R T I F I C A T E
This is to certify that MITUL M PATELOf Class XII has prepared the report on the
Project entitled “Report Card Making”. The report is the result of his efforts & endeavors. The report
is found worthy of acceptance as final project report for the subject Computer Science of Class
XII. He has prepared the report under my guidance.
(Mr. SANJAY PARMAR)PGT (Computer Science) Department of Computer Science.
Department of Computer Science
c e R T i F i c a T e
The project report entitled
“Report Card Making”,Submitted by MITUL PATEL of Class XII for the CBSE Senior Secondary Examination class XII of Computer Science has been examined.
SIGNATURE OF EXAMINER
D E C L A R A T I O N
I hereby declare that the project work entitled “Report Card Making”, submitted to Department of Computer Science, is prepared by me. All the coding are result of my personal efforts.
MITUL PATEL
Class XII
A C K N O W L E D G E M E N T
I would like to express a deep sense of thanks & gratitude to my
project guide Mr. Sanjay Parmar Sir for guiding me immensely through
the course of the project. He always evinced keen interest in my work.
His constructive advice & constant motivation have been responsible for
the successful completion of this project.
My sincere thanks goes to Shri !!!!!!!!!!, Our principal sir, for his
co-ordination in extending every possible support for the completion of
this project.
I also thanks to my parents for their motivation & support. I must
thanks to my classmates for their timely help & support for compilation
of this project.
Last but not the least, I would like to thank all those who had
helped directly or indirectly towards the completion of this project.
MITUL PATELClass: XII
CONTENTS
1. HEADER FILES USED. . . . . . . . . . . . . . . . .
2. FILES GENERATED. . . . . . . . . . . . . . . . . . .
3. WORKING DESCRIPTION. . . . . . . . . . . . .
4. CODING. . . . . . . . . .. . . . . . . . . . . . . . . . .
5. OUTPUT SCREENS. . . . . . . . . . . . . . . . . . .6. CONCLUSION. . . . . . . . . . . . . . . . . . . . . .
. . . .7. BIBLIOGRAPHY. . . . . . . . . . . . . . . . . . . . .
. . . .
HEADER FILES USED
1. FSTREAM.H – for file handling, cin and cout
2. PROCESS.H – for exit() function3. CONIO.H – for clrscr() and
getch() functions4. STDIO.H – for standard I/O operations5. STRING.H – for string handling6. MATH.H–for doing mathematical
operations
FILES GENERATED
DATA FILES
Report.DAT
PROGRAM FILEReport Card Making.CPP
OBJECT FILE
Report.OBJ
EXECUTION FILE
Report.EXE
WORKING DESCRIPTION
This program consistsof EIGHT options as follows
1. TO MAKE REPORT CARD2. TO APPEND NAMES3. SORT NAMES4. TO SEARCH A NAME5. TO UPDATE GRADE6. VIEW REPORT CARD7. LIST OF FAILURES8. MAIN MANU
HARDWARE AND SOFTWARE SPECIFICATION
Hardware Requirement Pentium (III-IV) Processor 64/128 MB of RAM 20/40 GB HDD 3¼ FDD CD Rom Drive Mouse, Keyboard & Printer VGA/SVGA
Software Requirement Windows XP/ 2007 Borland C++ / Turbo C++/ VC 4.5
Platform :- (Windows XP)Operating system Win-xp was chosen as the platform for developing the project. The choice was because of the following features provided by it:-
Multitasking Graphic User Interface User Friendly
ADVANTAGES OF USING C++Several advantages of using C++ are:-
Data Abstraction & Encapsulation. Data modularity. Reusability & transitive. Polymorphism. Inheritance.
OPERATING INSTRUCTION This program has been stored in file Program File:
officemg.cppData File : empdl.dat
To compile and run this program:- First go to the directory that contain it.(CD\project\
OFFICEMG.CPPs ) Open Turbo C++ Now open the file progress card and press Ctrl+f9
to compile and run it. Now the welcome screen appears.
process as per your choice
CODING
//Report Card Making#include<fstream.h>#include<stdlib.h>#include<stdio.h>#include<conio.h>#include<graphics.h>#include<dos.h>#include<string.h>#include<iomanip.h>
ofstream r;ifstream t;
void credits();void menu1();void menu2();void menu3();void terms();
class xii{ public: int roll; char na[20]; int m1,m2,m3,m4,m5; char g[10]; int t; int p; void input() { gotoxy(1,5); cout<<"\tENTER ROLL NUMBER OF THE STUDENT :"; cin>>roll; cout<<"\tENTER NAME OF THE STUDENT :"; gets(na); cout<<"\n\n\tENTER MARKS OF THE 5 SUBJECTS OUT OF 100"; cout<<"\n";
cout<<"\tENTER MARKS IN ENGLISH:"; cin>>m1;
cout<<"\n"; cout<<"\tENTER MARKS IN MATHS:"; cin>>m2; cout<<"\n"; cout<<"\tENTER MARKS IN PHYSICS:"; cin>>m3; cout<<"\n"; cout<<"\tENTER MARKS IN CHEMISTRY:"; cin>>m4; cout<<"\n"; cout<<"\tENTER MARKS IN COMPUTER:"; cin>>m5; cout<<"\n"; cleardevice(); t=m1+m2+m3+m4+m5; p=t/5; gotoxy(1,1); }
void output() { cout<<"\n"; cout<<" "<<roll<<"\t"<<" "<<na<<setw(10)<<"\t"; cout<<" "<<m1<<","<<m2<<","<<m3<<","<<m4<<","<<m5<<"\t"; cout<<" "<<p<<"%"<<"\t"<<"\t"<<" "<<g<<"\n"; cout<<"\t"; }
}s[30];
int i,n;void writes(){ clrscr(); cleardevice(); cout<<"\n"; cout<<"\tENTER THE NUMBER OF RECORDS TO BE CREATED :"; cin>>n; cleardevice(); for(i=0;i<n ;i++)
{ s[i].input(); if(s[i].p>=95)
strcpy(s[i].g,"A1"); if(s[i].p>=90 && s[i].p<=95)
strcpy(s[i].g,"A2"); if(s[i].p>=80 && s[i].p<=90)
strcpy(s[i].g,"B1"); if(s[i].p>=70 &&s[i].p<=80)
strcpy(s[i].g,"B2"); if(s[i].p>=60 &&s[i].p<=70)
strcpy(s[i].g,"C1"); if(s[i].p>=50 && s[i].p<=60)
strcpy(s[i].g,"C2"); if(s[i].p>=40&&s[i].p<=50)
strcpy(s[i].g,"D,1"); if(s[i].p<=40)
strcpy(s[i].g,"D2"); r.write((char*)&s[i],sizeof(s[i])); }}
void append(){ clrscr(); cleardevice(); cout<<"\n"; int k; cout<<"\t\t\t*-----------*"<<"\n"; cout<<"\t\t\t| APPENDING |"<<"\n"; cout<<"\t\t\t*-----------*"<<"\n"<<"\n"; cout<<"\tENTER THE NUMBER OF RECORDS TO BE APPENDED :"; cin>>k; for(i=0;i<k ;i++) { s[i].input(); if(s[i].p>=95)
strcpy(s[i].g,"A1"); if(s[i].p>=90&&s[i].p<=95)
strcpy(s[i].g,"A2"); if(s[i].p>=80&&s[i].p<=90)
strcpy(s[i].g,"B1");
if(s[i].p>=70&&s[i].p<=80)strcpy(s[i].g,"B2");
if(s[i].p>=60&&s[i].p<=70)strcpy(s[i].g,"C1");
if(s[i].p>=50&&s[i].p<=60)strcpy(s[i].g,"C2");
if(s[i].p>=40&&s[i].p<=50)strcpy(s[i].g,"D1");
if(s[i].p<=40)strcpy(s[i].g,"D2");
r.write((char*)&s[i],sizeof(s[i])); } getch(); n+=k;}
void search(){ clrscr(); cleardevice(); char name[20]; int flag=0; cout<<"\n"; cout<<"\t\t\t*-----------*"<<"\n"; cout<<"\t\t\t| SEARCHING |"<<"\n"; cout<<"\t\t\t*-----------*"<<"\n"<<"\n";
step: cout<<"\n\tENTER THE NAME TO BE SEARCHED :"; gets(name); cout<<"\n"; cout<<"ROLL NAME MARKS PERCENTAGE GRADE"<<"\n"; for(i=0;i<n;i++) { t.read((char *) &s[i],sizeof(s[i])); if(strcmp(name,s[i].na)==0) { flag=1; s[i].output(); break; }
} if(flag==0) { cleardevice(); cout<<"\tSORRY\n"; cout<<"\tTHE NAME DOES NOT EXIST.\n"; } getch();}
void update(){ clrscr(); cleardevice(); cout<<"\t\t\t*--------------*"<<"\n"; cout<<"\t\t\t| UPDATED LIST |"<<"\n"; cout<<"\t\t\t*--------------*"<<"\n"<<"\n"; cout<<"ROLL NAME MARKS PERCENTAGE GRADE"<<"\n"; cout<<"-----------------------------------------------------------"<<"\n"; for(i=0;i<n;i++) { if(s[i].p<=40.0)
s[i].t=s[i].t+(s[i].t/10);s[i].p=s[i].t/5.0;
if(s[i].p>=50.0&&s[i].p<=60.0)strcpy(s[i].g,"C2");
if(s[i].p>=40.0&&s[i].p<=50.0)strcpy(s[i].g,"D1");
if(s[i].p<=40.0)strcpy(s[i].g,"Failed");
r.write((char*)&s[i],sizeof(s[i])); s[i].output(); } getch();}
void sort() { clrscr(); cleardevice(); xii tp;
cout<<"\t\t\t*-------------*"<<"\n"; cout<<"\t\t\t| SORTED LIST |"<<"\n"; cout<<"\t\t\t*-------------*"<<"\n"<<"\n"; cout<<"ROLL NAME MARKS PERCENTAGE GRADE"<<"\n"; cout<<"---------------------------------------------------------"<<"\n"; for(i=0;i<n;i++) { t.read((char *) &s[i],sizeof(s[i])); for(i=0;i<n-1;i++) { for(int j=i+1;j<n;j++) { if(strcmp(s[i].na,s[j].na)>0) { tp=s[i];
s[i]=s[j]; s[j]=tp;
} } } for(i=0;i<n ;i++) s[i].output(); } getch();} void failed(){ cleardevice(); cout<<"\t**----------------------------------------------------------**"<<"\n"; cout<<"\t|| THE LIST OF STUDENTS WHO FAILED IN MORE THAN ONE SUBJECT ||"<<"\n"; cout<<"\t**----------------------------------------------------------**\n\n"; cout<<"ROLL NAME MARKS PERCENTAGE GRADE"<<"\n"; cout<<"-------------------------------------------------------"<<"\n"; for(i=0;i<n;i++) { int c=0; t.read((char *) &s[i],sizeof(s[i])); if (s[i].m1<=40)
c++;
if (s[i].m2<=40)c++;
if (s[i].m3<=40)c++;
if (s[i].m4<=40)c++;
if (s[i].m5<=40)c++;
if(c>=2) { s[i].output(); } }
getch();} void reads(){ clrscr(); cleardevice(); cout<<"\n"; cout<<"\t**------------------------------------------------**"<<"\n"; cout<<"\t|| THE REPORT CARD OF STUDENTS OF CLASS XII-B2 ||"<<"\n"; cout<<"\t**------------------------------------------------**"<<"\n"<<"\n"; cout<<"ROLL NAME MARKS PERCENTAGE GRADE"<<"\n"; cout<<"--------------------------------------------------------"<<"\n"; for(i=0;i<n;i++) { t.read((char *) &s[i],sizeof(s[i])); s[i].output(); } getch();} void terms(){ int gdriver = DETECT, gmode, errorcode; initgraph(&gdriver,&gmode,"\\turboc3\\bgi"); errorcode = graphresult(); if (errorcode !=grOk) /* an error code occurred */ {
printf("Graphics error: %s\n", grapherrormsg(errorcode));printf("Press any key to halt:");getch;exit(1); /* terminate with an error code */ }char chc;rectangle(1,1,getmaxx(),getmaxy());settextstyle(GOTHIC_FONT,VERT_DIR,5);settextjustify(LEFT_TEXT,CENTER_TEXT); //Was actually- settextjustify(LEFT_TEXT,CENTER_TEXT,5);outtextxy(50,240,"REPORT CARD");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,5);outtextxy(240,50,"SELECT A TERM");outtextxy(240,90,"OF YOUR CHOICE.");outtextxy(240,105," ......................................");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,4);setbkcolor(BLACK);outtextxy(300,170,"1.Ist TERM");outtextxy(300,220,"2.IInd TERM");outtextxy(300,270,"3.IIIrd TERM");outtextxy(300,320,"4.EXIT");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,3);outtextxy(400,400,"ENTER CHOICE");chc=getch(); switch(chc) { case '1':cleardevice();
menu1(); break;
case '2':cleardevice(); menu2(); break;
case '3':cleardevice(); menu3(); break;
case '4':cleardevice(); credits(); exit(0);
default :clrscr(); cleardevice();
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);outtextxy(220,210,"WRONG CHOICE !");outtextxy(170,270,"PLEASE TRY AGAIN.");sleep(2);cleardevice();terms();}closegraph();}
void credits(){cleardevice();setbkcolor(4);gotoxy(33,6);cout<<"-:Created By:-";
for(int i=70;i>28;i--){gotoxy(i,8);cout<<"Mitul Patel"<<endl;delay(70);}for(i=70;i>28;i--){gotoxy(i,10);cout<<"[email protected]"<<endl;delay(70);}gotoxy(28,25);cout<<"Press any key to exit...";getch();exit(0);}
/***********************************menu1************************************/
void menu1(){cleardevice();char ch;back:settextstyle(GOTHIC_FONT,VERT_DIR,5);settextjustify(LEFT_TEXT,CENTER_TEXT);outtextxy(50,240,"REPORT CARD");settextstyle(SANS_SERIF_FONT,VERT_DIR,4);setbkcolor(BLACK);settextjustify(LEFT_TEXT,CENTER_TEXT);outtextxy(110,240,"Ist TERM");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,4);outtextxy(290,50,"1.MAKE REPORT CARD");outtextxy(290,90,"2.APPEND NAMES");outtextxy(290,130,"3.SORT NAMES");outtextxy(290,170,"4.SEARCH A NAME");outtextxy(290,210,"5.UPDATE GRADE");outtextxy(290,250,"6.VIEW REPORT CARD");outtextxy(290,290,"7.LIST OF FAILURES");outtextxy(290,330,"8.MAIN MENU");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,3);
outtextxy(400,420,"ENTER CHOICE");ch=getch(); switch(ch) {case '1':r.open("report_1");writes();r.close();cleardevice();goto back; case '2':r.open("report_1",ios::app|ios::out);append();r.close();cleardevice();goto back;
case '3':t.open("report_1");sort();t.close();cleardevice();goto back; case '4':t.open("report_1");search();t.close();cleardevice();goto back; case '5':r.open("report_1",ios::end);update();r.close();cleardevice();goto back; case '6':t.open("report_1");reads();
t.close();cleardevice();goto back; case '7':t.open("report_1");failed();t.close();cleardevice();goto back; case '8':closegraph();terms();
default :clrscr();cleardevice();settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);outtextxy(220,240,"WRONG CHOICE !");outtextxy(190,280,"PLEASE TRY AGAIN.");sleep(2);cleardevice();goto back;}} /***************************************menu2********************************************/void menu2(){cleardevice();char ch;back:settextstyle(GOTHIC_FONT,VERT_DIR,5);settextjustify(LEFT_TEXT,CENTER_TEXT);outtextxy(50,240,"REPORT CARD");settextstyle(SANS_SERIF_FONT,VERT_DIR,4);setbkcolor(BLACK);settextjustify(LEFT_TEXT,CENTER_TEXT);outtextxy(110,240,"IInd TERM");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,4);outtextxy(290,50,"1.MAKE REPORT CARD");outtextxy(290,90,"2.APPEND NAMES");
outtextxy(290,130,"3.SORT NAMES");outtextxy(290,170,"4.SEARCH A NAME");outtextxy(290,210,"5.UPDATE GRADE");outtextxy(290,250,"6.VIEW REPORT CARD");outtextxy(290,290,"7.LIST OF FAILURES");outtextxy(290,330,"8.MAIN MENU");settextstyle(SANS_SERIF_FONT,HORIZ_DIR,3);outtextxy(400,420,"ENTER CHOICE");ch=getch();
switch(ch) {case '1':r.open("report_2");writes();r.close();cleardevice();goto back; case '2':r.open("report_2",ios::app|ios::out);append();r.close();cleardevice();goto back; case '3':t.open("report_2");sort();t.close();cleardevice();goto back; case '4':t.open("report_2");search();t.close();cleardevice();goto back; case '5':r.open("report_2",ios::end);update();
r.close();cleardevice();goto back;
case '6':t.open("report_2");reads();t.close();cleardevice();goto back; case '7':t.open("report_2");failed();t.close();cleardevice();goto back; case '8':closegraph();terms(); default :clrscr();cleardevice();settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);outtextxy(220,240,"WRONG CHOICE !");outtextxy(190,280,"PLEASE TRY AGAIN.");sleep(2);cleardevice();goto back;}} /*********************************menu3**************************************/void menu3(){cleardevice();char ch;back:settextstyle(GOTHIC_FONT,VERT_DIR,5);settextjustify(LEFT_TEXT,CENTER_TEXT);
outtextxy(50,240,"REPORT CARD");settextstyle(SANS_SERIF_FONT,VERT_DIR,4);setbkcolor(BLACK);settextjustify(LEFT_TEXT,CENTER_TEXT);outtextxy(110,240,"IIIrd TERM");settextstyle(SANS_SERIF_FONT,0,4);outtextxy(290,50,"1.MAKE REPORT CARD");outtextxy(290,90,"2.APPEND NAMES");outtextxy(290,130,"3.SORT NAMES");outtextxy(290,170,"4.SEARCH A NAME");outtextxy(290,210,"5.UPDATE GRADE");outtextxy(290,250,"6.VIEW REPORT CARD");outtextxy(290,290,"7.LIST OF FAILURES");outtextxy(290,330,"8.MAIN MENU");settextstyle(SANS_SERIF_FONT,0,3);outtextxy(400,420,"ENTER CHOICE");ch=getch();
switch(ch) {case '1':r.open("report_3");writes();r.close();cleardevice();goto back;case '2':r.open("report_3",ios::app|ios::out);append();r.close();cleardevice();goto back;
case '3':t.open("report_3");sort();t.close();cleardevice();goto back;
case '4':t.open("report_3");search();
t.close();cleardevice();goto back;
case '5':r.open("report_3",ios::end);update();r.close();cleardevice();goto back;
case '6':t.open("report_3");reads();t.close();cleardevice();goto back;
case '7':t.open("report_3");failed();t.close();cleardevice();goto back;
case '8':closegraph();terms();
default :clrscr();cleardevice();settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);outtextxy(220,240,"WRONG CHOICE !");outtextxy(190,280,"PLEASE TRY AGAIN.");sleep(2);cleardevice();
goto back;}}
/**********************************main**************************************/void main(){int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver,&gmode,"\\turboc3\\bgi");errorcode = graphresult();if (errorcode != grOk) /*an error occurred*/ { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch; exit(1); /* terminate with an error code */ } settextstyle(SANS_SERIF_FONT,HORIZ_DIR,5);rectangle(1,1,getmaxx(),getmaxy());setbkcolor(9);outtextxy(300,100,"A");delay(2000);outtextxy(200,170,"PROJECT ON");delay(2000);outtextxy(95,240,"REPORT CARD MAKING");delay(2000);for(int i=0;i<=360;i++) { ellipse(320,240,0,i,300,200); delay(12); }closegraph();terms();}
OUTPUT
1.WELCOME SCREEN
2.CHOICE SCREEN
3.SELECT ED Ist TERM
4. TO MAKE REPORT CARD
5. TO APPEND NAMES
6. TO SORT NAMES
7. TO SEARCH A NAME
8. VIEW REPORT CARD
9. LIST OF FAILURES
10. EXIT SCREEN
BIBLIOGRAPHY
INTERNET
Computer Science Text Book (By Sumita Arora for class XII)
Together with Computer Science (Published by Rachna Sagar PVT LTD.)
Practicals & Projects In C++ (Published by Dhanpat Rai & CO.)