Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 31

Index

Introduction
Programming concept
Language introduction
Data flow diagram.
Header file.
User defined function.
Codes.
Output Screen
Hardware requirement.
User interface.
Data storing method.
Advantages & disadvantages.
Conclusion.
Bibliography.
Introduction

Preparing report cards for number of students involves same task need to be performed every
time. As this work involves doing calculation on same rules to make final results for each
results and writing it manually on report card using pen and paper. So to eliminate such
type of work, it’s better to achieve this work using computer system. Teachers or persons
who will responsible for preparing report card have to enter only marks of each subject for
every students and processing work will take care by the computer system in order to
prepare final report card. Even system will relieve teachers for writing manually on report
card and providing print facility by which, it will enable them to display the marks of each
students on paper by just one click. As system has been provided with all maximum
possibility to make their task easier, so number of features has been made available to
continue the task without any intervention. It will only not prepare the report card, but also
able to store data of each students, so that it can be accessed any time and if required can
make modification as per requirement. The concept of graphics has been used which will
make its user to use this system in an easy manner.

For solving above problem we follow the software engineering’s concept of modeling
technique.
We use water fall model.
Water fall model provide following problem solving technique.
Analysis.
Design
Coding.
Testing
Implementation.

All above technique we discuss in next part of our documentation.


Programming concept

Analysis: - in this technique we consider the problem. What is problem?


When we defined the problem then it is easy to find the solution.
As in previous session we define following problem.
What information about student required?
How each result and student identified?
What are basic requirement of result?
What initial process performed to maintain information?
Which is most difficult task to maintain data information? Etc.
For each problem we consider following solution.
What information about teacher required?
For this we define that at student name, address, contact, marks
obtained, grading, roll Number, passing marks & attendance is enough
information about any student
How each student result identified?
What initial process performed to maintain information?
The following initial process required to maintain data storage.
Add new entry.
Maintaining record.
Search record.
Viewing all Data Of records.
Which is most difficult task to maintain data information?
The most difficult task of marinating data information is displaying
data. Hear we use a searching option which search through many option
and display record list about that option. And also display list of all record.
Design: - in this technique we draw a data flow diagram which provides basic
structure to draw project.
Coding: - in this technique we use c language to implement project on the designed
structure.
Testing: - in this session we test our project in different environment, access many
data. On each entry it gave appropriate result.
Implementation: - in this session we consider the future modification on
our project. Because in this initial stage we done many mistake. So in
future we try to overcome the disadvantages.
Language introduction

The language use to construct the employee system is C. We have use C


because we all are quite familiar with it. It is reliable, simple and easy to use
out of the dozen of languages Available. C is a high level language that provides
high level programming with efficiency because it has the power of the machine
language.
C is general-purpose structured programming language. Its instructions
consists of English terms that resemble algebraic Expressions of augmented by
certain English Keywords such as if, Else, for do & while.
C bridges the gap between conventional high level languages and machine
language. This allows C to be used for System programming as well as the
application programming. C is characterize by the ability to write very concise
Source program due in the part of the large no. of operator within the language
it has relatively small instruction set, though actual implementation includes
extensive library functions, which enhances the basic functions. Furthermore,
the language encourages the
user to write additional library functions of their own. Thus, the user can easily
extent the features and capabilities of the language. Another important
characteristics of C is that its program are highly portable, even more so then
with the other langue the reason for this is that C relegates most computer
dependent features to its library. Thus, C accompanied by its own sets of
library functions, which are written for the particular characteristics of the host
computer. These library functions are relatively standardized, however, and
each individual library function it generally accessed in the same manner from
one version of C to another. Therefore, Most C program can be processed on
different computers with little or no alteration.
Data flow diagram
Header files
In this project we use following header files.

Graphics.h:-provides visual graphics function. By which the


window’s and graphics created.

Stdio.h:- <standard input output > provides functions for


accessing data through input and output stream.

Conio.h:- <consol input output> provides function for accessing


action through consol.

String.h:- provides strings processing functions.

Process.h:- some process action function as exit().


Dos.h :- Some other action function as delay().
Time.h :- For using special time function like gettime(), asctime() etc.
User defined function

In this project we use following function.


Main():- it recognize by operating system, for execution of
program.
Entry():- it provide the main user interface window.
student():- This function use to search any information
about customer.
Modify():- This function provide status for any login
key.
Search():- It also Provide status about user information
key.
Delete():- It provide main window key status in status
bar.
View():- It function to provide save entry & display in
main widow.
Payment():- This function use we see sub_sub_fn & use
it.
Add_Cus_file():- This function should have delete
information from main window.
Add_veh_file():- This function provide us simple clock
to see current time & date.
Modofy_ini():- It provide us to see History About All
Customer.
Menu_key():- This function Convert character from in
ascii from.
Status(int):- This function also Convert in ascii.
Int tecordno_cus_ini (int t):- This function find
difference between two different time.
Codes:-

#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,"D1");
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,"c:\\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<<"Navi Arora";
delay(70);
}
for(i=70;i>28;i--)
{
gotoxy(i,10);
cout<<"www.NaviArora.com";
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,"c:\\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 SCREEN
Hard ware requirements

Processor :- p-II, or extended (new).


Memory :- At least 10 MB of RAM.
Disk space :- 10 MB hard disk space.
Devices :- keyboard, monitor, floppy or cd/dvd drive.
Operating system: - window 98, NT or XT series.

User interface

It provide CUI (character user interface), it mean all task perform


through key input’s and control keys.

Data storing method

As we know c doesn’t provide any kind of database connectivity. But it


provide power full feature of file handling.

Using c file handling we store data, retrieve it and access it. We use
fprintf() for storing data and fscanf() for fetching data.
Both are very powerful function provided by standard input output
library.
This project save data in “Emp.xls” file, which also accessible by ms
excel. This stored in present working directory.
Advantages and disadvantages

There are some advantages and disadvantages of this project.


Advantages:-
It provides good searching facility.
It provides common working.
Easy accessing.
Interactive interface
Solve all occurred problems.
Provide help support in task bar
Calculate time differences.
Disadvantages:-
Platform dependent.
Unable to perform printing.
No event handling (mouse use).
Run only window environment.
Conclusion

This is a prototype model to display a little working of data handling


technique using School Fees management system. This not provides
enough features like a major project but in initial this is provide a base
to implement software designing concept.
This project perform well defined task, which we need to perform. And
in future we implement using extend concept of programming.
BIBLIOGRAPHY

 THINKING IN C BY BRUCE ECKEL


 SYSTEM ANALYSIS AND DESIGN BY ELIAS AWAD
 INTERNET COLLECTION

You might also like