Sie sind auf Seite 1von 24

LOVELY PROFESSIONAL

UNIVERSITY

 TERM PAPER 
CSE-101

Gas Agency
Management
System
Submitted to:
Submitted by:

Mr.Sanjay Sood Mr.


Balvir Singh

Roll.No.- 40

Reg.No- 10801210

Class- bca-mca
ACKNOWLEDGEMENT

I BALVIR SINGH of section E 3801 registration no. 10801210 and roll


no.40 of course BCA MCA hereby submit my term paper on foundation
of computing. I have done this project of Gas agency management
system under the guidance of MR SANJAY SOOD. This is my great
experience of C programming to submit this term paper.

INTRODUCTION
C programming helps us in finding the solution of the problems by the
computer language, by preparing the C program codes. As same in this
program of the address book we have given a statement in the
execution screen to enter the address of the employee or any personal
address. In this program I used structures and if-else loops with the
help of switch case and for loops.

This program is widely used in many factories or in government


management system like railways, airlines reservation ,and also in
some sort of banks.

This program helps us to do many further aspects in the


future.~~~~!!!!!!

Advantages:--
There are many advantages of this system whose name is Gas
Agency management System This system is use in many
Government System without of this system no one can use gas
cylinders in their home… as we all know that gas is very important in
our homes withouts of this no one can eat food….

System Requirements:--

For this program this system requires following things:--

1. First of all we require C software….

2. Then we require 32 bit screen resolution….

3. Then we require Compiler….

4. We also require window Xp….

Introduction of gas agency

management system
We can make this gas management system in C language by using three or

more than three header files or many data types such as:

1. #include<stdio.h> : this header file will contain Scanf() , Printf () And,

there are many header files which are used in this program….

2. #include<conio.h>: this header file will contain Clrscr(); , Getch(); , and

many more…..

3. #include<math.h>: this header file will contain power

function(pow()) , squareroots function , cuberoots function , etc

are used in this program…

4. #include<string.h> : this header file will contain string

function such as :

a. Strrev();

b. Strlen();

c. Strupr();

d. Strlwr();

e. And many mores……

Source code

#include <stdio.h> //Header file included to use funcitons like fseek,fopen etc.
#include <conio.h> //Header file for using functions like getch, cprintf etc.

#include <dos.h> //Supporting funcitons like getdate,gettime etc.

#include <string.h> //Supporting all string fucntions

#include <stdlib.h> //Supproting fucntions like atol,atof etc.

#include <ctype.h> //Supporting function like toupper,tolower etc.

void war_func(); //For the Display of warning on the screen

void enter_view(); //For the Display of View Record Menu

void shows(); //For Display of record in the program

int date(); //Declaration of fucntion for displaying Date

void screen(); //Display the screen and background colors

void start(); //Used to display main menu after entering rates

void add(); //UFD for adding a new Bill record

void del(); //UDF for Deleting an existing record

void empty(); //Used for deletion of records

void search(); //UDF for searching an existing record

void modify(); //UDF for modifying an existing bill record

void input(); //Function for taking input while adding a record

void view(); //Fuction for viewing recrods

void rate1(),rate2(),rate3(); // Fucntions for Fixing the rates of fuel types

int duplicate(unsigned long int); //Checks the Duplication of Receipt Number

void getinput(float *x); //Checks the input for all Decimal values entered
while input

void getint(int *y); //Checks the input of integer type (MENU


OPTIONS)

void getprh(int *p); //Checks the input of interger type for Fuel types

void getld(unsigned long *p); //Checks the length and validity of input of type
long (Receipt Number)

int i,j; //Declaration of variables of type interger

float rate; //Float declaration for rates of fuels

char ch; //Global declaration of ch for use in fucntions

struct add //Declaration of Add structure used in Add module


{ unsigned long int car_id; //Receipt ID for adding (4 bytes)

int day;

int mon;

int year;

float sum_rate;

float quantity;

int fuel;

y;

struct //Declaration of structure for Fuel prices

{ float ch1,ch2,ch3; //Three float type variables for keeping fuel


price inputs

} z;

struct date d; //Default Date Structure for displaying Date

main() //Start of Main Fucntion

{ window(1,1,80,25);

textbackground(WHITE); clrscr();

window(5,3,75,17); textbackground(BLACK);
clrscr();

window(7,4,73,16); textbackground(WHITE);

textcolor(4); clrscr();

gotoxy(2,1);

printf("\t\t [ Gas-Station Management System ]");

gotoxy(2,2);

printf("\n\t\t² First Enter Daily Prices for Fuels ¯¯¯ ²\n");

printf("\n\n\n\n\n\n\n\tPress any key to Continue.........");

getch();

window(1,1,80,25);

textbackground(15);

{ rate1();

rate2();

rate3();
}

start();

} //End of main

void start()

{ do

{ window(1,1,80,25);

textbackground(WHITE); clrscr();

window(5,3,75,17); textbackground(BLACK);
clrscr();

window(7,4,73,16); textbackground(WHITE);

textcolor(4); clrscr();

gotoxy(2,1);

printf(" [ Gas-Station Management System ]");

gotoxy(2,2);

printf(" ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±\n");

printf("\t ² ²\n");

printf("\t1.² Enter a new Bill ¯¯¯ ²\n");

printf("\t2.² View recorded Bills ¯¯¯ ²\n");

printf("\t3.² Modify any Bill ¯¯¯ ²\n");


//---->>Display of main menu

printf("\t4.² Search for Bills ¯¯¯ ²\n");

printf("\t5.² Delete recorded Bills ¯¯¯ ²\n");

printf("\t6.² Change daily prices ¯¯¯ ²\n");

printf("\t7.² Exit program ¯¯¯ ²\n");

printf("\t ²±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±±±±±±±±±±±±±±±±±±±±±±±±±²\n");

printf("\t \t Please Enter a number from the above menu: ");

getint(&i);

window(1,1,80,25);

textbackground(15);

if(i>7||i==0)
{ war_func(); /*Calling Fucntion to show
Warning*/

clrscr();

else if(i==5)

{ del(); /*Calling Delete function to perform


deletion of records*/

else if(i==3)

{ modify(); /*Calling Modify function to perform


Modificaiton in records*/

else if(i==4)

{ search(); /*Calling Search function to perform


searching*/

else if(i==1)

{ input(); /*Calling input function to perform


addition of records*/

else if(i==6)

{ main();

} else if(i==2)

{ enter_view(); //Calling Menu for View function

} } while(i!=7); //Exit when we press 7

clrscr();

printf("\n\n\n\n\n\n\n\n\tAuthor : Anchit rubin Kumar Giri\n");

printf("\tProject : Gas-station Management System\n");

printf("\tLanguage : C\n");

printf("\tPurpose : CIE IGCSE Computer-Studies


Coursework\n\n\n\n");

printf("\n\n\n\t\tEXITING IN 3 SECONDS...");

delay(3500);
return 0;

void war_func() //Start of warning function

{ clrscr();

window(5,3,75,17);

textbackground(BLACK);

clrscr(); //----------->>Setting Background colors

window(7,4,73,16);

textbackground(WHITE);

textcolor(4);

clrscr();

gotoxy(12,5); printf("Warning! Invalid Input...Press any key!");

getch();

clrscr();

void del() //Start of Delete Module

{ FILE *fp;

unsigned long car_id1;

screen();

fp=fopen("Bills.rec","rb+");

gotoxy(2,2);cprintf("Enter Receipt number for Deletion: ");

getld(&car_id1);

while(fread(&y,sizeof(y),1,fp) && car_id1!=y.car_id );

if((car_id1==y.car_id)&&(y.car_id!=0))

{ shows();

do

{ gotoxy(2,6); printf("Delete this record (Y/N) : ");

fflush(stdin);

ch=toupper(getch());

} while(ch!='Y'&& ch!='N');

if(ch=='Y')
{ empty();

fseek(fp,ftell(fp)-sizeof(y),0);

fwrite(&y,sizeof(y),1,fp);

clrscr();

gotoxy(22,3); printf("Record has been Deleted.");

gotoxy(20,6); printf("Press any key to continue....");

getch();

window(1,1,80,25);

textbackground(WHITE);

clrscr();

fclose(fp); }

else if (ch=='N')

{ fclose(fp);

window(1,1,80,25);

textbackground(WHITE);

clrscr();

start();

} } else

{ gotoxy(2,7); printf("Record not found..");

getch();

window(1,1,80,25);

textbackground(WHITE);

clrscr();

fclose(fp);

} //End of Delete Module

void view()

{ FILE *fp;

clrscr();

fp=fopen("Bills.rec","rb");

while(fread(&y,sizeof(y),1,fp)!=NULL)
{

if((y.day!=0)&&(y.car_id!=0))

do

{ screen();

gotoxy(2,4);printf(" ");

shows();

gotoxy(2,4);printf("Press "" Y "" to view next record-------¯¯");

gotoxy(2,6); printf("Continue (Y/N) : ");

ch=toupper(getch());

} while(ch!='Y'&& ch!='N');

if(ch=='N ')

{ fclose(fp);

enter_view();

} } }

fclose(fp);

} //End of view Module

void modify()

{ FILE *fp;

unsigned long car_id1;

clrscr();

window(4,4,74,12);

textbackground(BLACK);

clrscr();

window(5,5,73,11);

textbackground(WHITE);

clrscr();

fp=fopen("Bills.rec","rb+");

gotoxy(2,2);cprintf("Enter Receipt number to modify: ");

getld( &car_id1 );

while( fread(&y,sizeof(y),1,fp) && car_id1!=y.car_id );


if((car_id1==y.car_id) &&(y.car_id!=0))

{ shows();

do

{ gotoxy(2,7);

printf("Continue to modify (Y/N) : ");

fflush(stdin);

ch=toupper(getch());

} while(ch!='Y'&& ch!='N');

if(ch=='Y')

window(1,1,80,25); clrscr();

textbackground(WHITE); clrscr();

window(5,3,75,17); textbackground(BLACK);
clrscr();

window(7,4,73,16); textbackground(WHITE);

textcolor(4); clrscr();

gotoxy(18,1); printf(" Modify Record MENU ");

gotoxy(1,2);

printf("°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°");

gotoxy(3,3); printf("Receipt Number: %ld",y.car_id);

getdate(&d);

gotoxy(35,3); printf("Date (DD M YYYY): %d %d %d


",d.da_day,d.da_mon,d.da_year);

y.day = d.da_day;

y.mon = d.da_mon;

y.year= d.da_year;

gotoxy(1,4);

printf("°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
");

do

{ gotoxy(3,5);

printf("Enter Quantity (Litres): ");


getinput(&y.quantity);

} while(y.quantity==0);

gotoxy(3,7);printf("Enter fuel type:");

gotoxy(3,8);printf("Press 1: Petrol or 2: Diesel or 3: CNG: ");

getprh(&y.fuel);

gotoxy(2,8);printf(" ");

switch(y.fuel)

{ case 1:

gotoxy(20,7); printf("Petrol ");

rate=z.ch1;

break;

case 2:

gotoxy(20,7); printf("Diesel ");

rate=z.ch2;

break;

case 3:

gotoxy(20,7); printf("CNG");

rate=z.ch3;

break; //fix the rate with its type

} y.sum_rate=rate*y.quantity;

gotoxy(1,8);
printf("-------------------------------------------------------------------");

gotoxy(20,9); printf("Payment Bill in Rupees: %2.2f\n


",y.sum_rate);

gotoxy(1,11); printf("±±±±±±±±±±±±±±±±±±±±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");

gotoxy(5,13); printf("Record Modified--------->");

gotoxy(35,13); printf("Press any key to continue...");

fseek(fp,ftell(fp)-sizeof(y),0);

fwrite(&y,sizeof(y),1,fp);

fclose(fp);

getch();
window(1,1,80,25);

textbackground(WHITE);

else if (ch=='N');

{ fclose(fp);

window(1,1,80,25);

textbackground(WHITE);

start();

}} else

{ gotoxy(2,7); printf("Record not found..");

getch();

window(1,1,80,25);

textbackground(WHITE);

clrscr();

}} //End of Modify Module

void search() //Start of Search Module

FILE *fp;

unsigned long car_id1;

screen();

fp=fopen("Bills.rec","rb");

gotoxy(2,2);

cprintf("Enter Receipt number for search: ");

getld(&car_id1);

while(fread(&y,sizeof(y),1,fp) && car_id1!=y.car_id );

if((car_id1==y.car_id)&&(y.car_id!=0))

{ shows();

getch();

window(1,1,80,25);

textbackground(WHITE);

}
else

{ gotoxy(2,7); printf("Record not found..");

getch();

window(1,1,80,25);

textbackground(WHITE);

clrscr();

fclose(fp);

} //END of Search Module

void add() //Start of add Module

{ unsigned long temp;

clrscr();

textbackground(WHITE);

clrscr();

window(5,3,75,17);

textbackground(BLACK);

clrscr();

window(7,4,73,16);

textbackground(WHITE);

textcolor(4);

clrscr();

gotoxy(19,1); printf(" [ ADD Record MENU ] ");

gotoxy(1,2);

printf("°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°");

do{ gotoxy(3,3);

printf(" ");

gotoxy(3,3); printf("Receipt Number: ");

getld(&temp);

gotoxy(3,5); printf("Already Exists ! ");

} while(duplicate(temp));
y.car_id = temp;

getdate(&d);

gotoxy(35,3); printf("Date (DD M YYYY): %d %d %d


",d.da_day,d.da_mon,d.da_year);

y.day = d.da_day;

y.mon = d.da_mon;

y.year= d.da_year;

gotoxy(1,4);

printf("°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°");

do

{ gotoxy(3,5); printf("Enter Quantity (Litres): ");

getinp ut(&y.quantity);

} while(y.quantity==0);

gotoxy(3,7); printf("Enter fuel type:");

gotoxy(3,8); printf("Press 1: Petrol or 2: Diesel or 3: CNG: ");

getprh(&y.fuel);

gotoxy(2,8);

printf(" ");

switch(y.fuel)

CASE 1:

gotoxy(20,7); printf("Petrol ");

rate=z.ch1;

break;

CASE 2:

gotoxy(20,7); printf("Diesel ");

rate=z.ch2;

break;

CASE 3:

gotoxy(20,7); printf("CNG");

rate=z.ch3;
break;

DEFAULT:

gotoxy(20,7);war_func();

break;

} y.sum_rate=rate*y.quantity;

gotoxy(1,8); printf("-------------------------------------------------------------------");

gotoxy(20,9); printf("Payment Bill in Rupees: %2.2f


",y.sum_rate);

gotoxy(1,10); printf("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");

void input

FILE *fp;

char ch;

do {

fp=fopen("Bills.rec","ab");

add();

fwrite(&y,sizeof(y),1,fp);

gotoxy(22,12); printf("ADD more records (Y/N): ");

fclose(fp);

ch=toupper(getch());

} while (ch=='Y')

} //END of Input Module

void rate1()

{ screen();

gotoxy(5,2); printf("Enter the daily amount for Petrol: ");

getinput(&z.ch1);

} void rate2()

gotoxy(5,4); printf("Enter the daily amount for Diesel: ");

getinput(&z.ch2);
}

void rate3()

{ gotoxy(5,6); printf("Enter the daily amount for CNG: ");

getinput(&z.ch3);

window(1,1,80,25);

textbackground(WHITE);

clrscr();

} //End of All rate fucntions

void getinput(float *y)

char x[MAX];

int n=0;

do

Do { ch=getch();

if(((ch>='0'&&ch<='9')||(ch=='.')) &&(n<MAX))

{ x[n]=ch;

n++;

printf("%c",ch);

else if(ch==8&&n>0)

printf("%c%c%c",8,32,8);

n--;

}} while( ch!=13 && n<MAX );

x[n]='\0';

*y=atof(x);

} while(ch!=13);

} //End of float validity check

void getint(int *u)

{ char x[MAX];
int n=0;

do{

do{

ch=getch();

if(((ch>='1'&&ch<='7')||(ch=='.')) &&(n<MAX-4))

x[n]=ch;

n++;

printf("%c",ch);

else if(ch==8&&n>0)

{ printf("%c%c%c",8,32,8);

n--; }

} while(ch!=13&&n<MAX);

x[n]='\0';

*u=atoi(x);

} while(ch!=13);

} //End of integer value check

void getprh(int *p)

{ char x[MAX];

int n=0;

do{

do{ ch=toupper(getch());

if((ch=='1'|| ch=='2'|| ch=='3') &&(n<MAX-4))

{ x[n]=ch;

n++;

printf("%c",ch);

} else

if(ch==8&&n>0)

{ printf("%c%c%c",8,32,8);

n--;
}} while(ch!=13&&n<MAX);

x[n]='\0';

*p=atoi(x);

} while(ch!=13);

} //End of integer input check # 2

void getld(unsigned long *p)

char x[MAX];

int n=0;

do{

do{

ch=toupper(getch());

if((ch>='0'&& ch<='9') &&(n<MAX))

{ x[n]=ch;

n++;

printf("%c",ch);

else

if(ch==8&&n>0)

{ printf("%c%c%c",8,32,8);

n--; }

} while(ch!=13&&n<MAX);

x[n]='\0';

*p=atol(x);

}while(ch!=13);

} //End of long int check

void empty()

{ y.car_id=0;

y.fuel=0;

y.day=0;

y.mon=0;
y.year=0;

y.sum_rate=0;

y.quantity=0;

} void enter_view()

{ int u;

screen();

gotoxy(3,2); printf("[1] View the records ¯¯¯");

gotoxy(3,4); printf("[2] Go to main menu ¯¯¯ ");

gotoxy(10,6); printf("Enter your choice : ");

getint(&u);

if(u==1)

view();

if(u==2)

{ window(1,1,80,25);

textbackground(WHITE);

clrscr();

start();

}int duplicate(unsigned long int rno)

FILE *fp;

fp=fopen("Bills.rec","rb");

while(fread(&y, sizeof(y), 1, fp) && rno != y.car_id);

fclose(fp);

if((rno == y.car_id)||(rno==0))

return 1;

else

return 0;

void shows()
{

gotoxy(2,2); printf(" ");

gotoxy(2,4); printf("Record found------------------------


¯¯\n");

gotoxy(41,1); printf("²±±±±±±±±±±±±±±±±±±±±
±±±±±±±±");

gotoxy(41,2); printf("² Receipt #: %ld",y.car_id);

gotoxy(41,3); printf("² Quantity :


%2.2f",y.quantity);printf(" litres");

gotoxy(41,4); printf("² Payment :


%2.2f",y.sum_rate);printf(" Rs");

gotoxy(41,5); printf("² Fuel type: %d",y.fuel);

if(y.fuel==1)

gotoxy(53,5); printf(" Petrol");

else if(y.fuel==2)

gotoxy(53,5); printf(" Diesel"); }

else

{ gotoxy(53,5); printf(" CNG");

} gotoxy(41,6); printf("² Date : %d-%d-%d",


y.day,y.mon,y.year);

gotoxy(41,7); printf("²±±±±±±±±±±±±±±±±±±±±
±±±±±±±±");

void screen()

window(1,1,80,25);

textbackground(WHITE);

clrscr();

window(4,4,74,12);

textbackground(BLACK);
clrscr();

window(5,5,73,11);

textcolor(4);

textbackground(WHITE);

clrscr();

Future Of This System

there is a lot of importance of this system . as we all know that


this system is without gas we can not cook food for us…..and
without this system we can not take gas from agency to our
home…..

Das könnte Ihnen auch gefallen