Vous êtes sur la page 1sur 47

LIC MANAGEMENT SYSTEM

LIC MANAGEMENT SYSTEM

C++ PROJECT REPORT

M.S.Ramaiah Institute of Technology


Dept. of Electronics and Instrumentation Engineering

Submitted to:
S.Elavaar Kuzhali
Assistant Professor

Submitted By:
Pushkarini.R.K - 1MS12IT036
Rachitha Shetty – 1MS12IT037
Rajat Mishra – 1MS12IT038
Rajat Rokade – 1MS12IT039
Rakesh Mishra – 1MS12IT041
Raunak Pandey – 1MS12IT042
Reshma R – 1MS12IT043
Sakshi – 1MS11IT046

1|Page
LIC MANAGEMENT SYSTEM

CONTENTS

1. Certificate Page no 3

2. Acknowledgement Page no 4

3. Project Abstract Page no 5

4. Header Files Page no 6

5. Structures Page no 7

6. Functions Page no 8 – 14

7. Flow Chart Page no 15

8. Source Code Page no 16 – 43

9. Screen Shots Page no 44 – 46

10. Conclusion Page no 47

2|Page
LIC MANAGEMENT SYSTEM

CERTIFICATE

We hereby certify that the work which is being presented in the c++ Project
report entitled “LIC MANAGEMENT SYSTEM” has been submitted to the
Department of Electronics and Instrumentation Engineering, M.S.Ramaiah
Institute of Technology, Bangalore, India is an authentic record of our own
work carried out during a period of October-2014 under the supervision of
S.ELAVAAR KUZHALI, Assistant Professor, Electronics and Instrumentation
Engineering Department.

Signature of Students
Pushkarini.R.K (1MS12IT036), Rachitha Shetty (1MS12IT037), Rajat Mishra
(1MS12IT038), Rajat Rokade (1MS12IT039), Rakesh Mishra (1MS12IT041),
Raunak Pandey (1MS12IT042), Reshma R (1MS12IT043) Sakshi (1MS11IT046)
This is to certify that the above statements made by us is correct to the best of our
knowledge.

Signature of Supervisor:
S. Elavaar Kuzhali
Associate Professor
Dept. of Electronics and Instrumentation Engineering
M.S.Ramaiah Institute of Technology

3|Page
LIC MANAGEMENT SYSTEM

ACKNOWLEDGEMENT

We would like to express our special thanks of gratitude to our Professor


S.Elavaar Kuzhali, Dept. of Electronics and Instrumentation Engineering,
M.S.Ramaiah Institute of Technology who gave us an opportunity to do this
project on the topic LIC MANAGEMENT SYSTEM, which helped us in
understanding the subject very well and also gave us an exposure to many new
concepts. It also helped us to understand how a group work is being carried
and to work efficiently as a team member.

Secondly we would also like to thank our parents and friends who helped us a
lot in finalizing this project within the limited time frame.

Signature by:
Pushkarini.R.K - 1MS12IT036
Rachitha Shetty – 1MS12IT037
Rajat Mishra – 1MS12IT038
Rajat Rokade – 1MS12IT039
Rakesh Mishra – 1MS12IT041
Raunak Pandey – 1MS12IT042
Reshma R – 1MS12IT043
Sakshi – 1MS11IT046

4|Page
LIC MANAGEMENT SYSTEM

PROJECT ABSTRACT

LIC Database system will help both customers and their agents to know about the
current policies and enabling customers to select policies as per their choice. To start
this projects, users have to just run the project and its user friendly menu items will
help both its customers and agents to handle this LIC database management system
easily. Whenever you run the program, it will start with loading screen as below:

Whenever loading completes, the next screen will be the LIC welcome screen where
they are given choice to select the correct options as per their need.
If you want to go the customer section then you have to select its option and if you
want to be logged in as agent of LIC Database system then you have been provided
with other option. These options are entered at the current cursor position and after
which its screen will be appear, where they will required to enter their id to use their
particular account. Existing customers will able to check their policy details under
which they have made investment.

Proposed System
The current system stored all data in particular file in the binary format which is not
able to read by others. Its command prompt will not able its users to know about the
background details thus providing the feature of extra security and reliability.
Customers will have the option to review any policy as per their choice and select
particular policy if they like it. Each customers and agent will have unique id by which
they will able to check their account at any time.

5|Page
LIC MANAGEMENT SYSTEM

Header Files Used:


 iostream.h: The manipulators in this library affect the format of stream
operations. Eg: endl, cin, cout etc.
 Iomanio.h: The manipulation in this library affect the format of steam
operations. Eg: setw(), setprecision() etc.
 String.h: This library enables you to manipulate C strings that end in the
char '\0', the null char. unless noted otherwise, these functions return a
pointer to the resulting string in addition to modifying an appropriate
argument. The argument ch is a character, n is an integer, and the other
arguments are strings, which usually means they are names of a char
array, but can be string constants in some cases.
Eg: strcmp, strcpy, strlen, strcat etc.
 Math.h: The C++ functions in this library compute certain standard
mathematical functions. These functions are overloaded to
accommodate float, double, and long double. Unless otherwise
indicated, each function has one argument, with the return type being
the same as the argument type (either float, double, or long double).
 Ctype.h: Most functions in this library classify a given ASCII character as
a letter, a digit, and so on. Two other functions convert letters between
uppercase and lowercase. Eg: toupper(), isalpha(), isdigit() etc.
 Dos.h: dos.h in c: dos.h header file of c language contains functions for
handling interrupts, producing sound, date and time functions etc. It is
borland specific and works in turbo c compiler. Eg: delay function, sound
function etc.
 Process.h: Is a C++ header file which contains function declarations and
macros used in working with threads and processes. Most C compilers
that target DOS, Windows 3.1x, Win32, OS/2, Novell NetWare or DOS
extenders supply this header and the library functions in their C library.
Neither the header file nor most of the functions are defined by either
the ANSI/ISO C standard or by POSIX.

6|Page
LIC MANAGEMENT SYSTEM

Structures used in this code


1. Struct address(structure address)
 A user defined datatype to hold the address of the user.
 Includes the variables like house number, area, city and state.
 All the attributes are of character type.
2. Struct agn(structure agent)
 User defined data type to hold the details of the agent
 It includes the variables like name ,agent code, agent address, age,
policies sold, salary and category to which the agent belong (for ex
 The built-in data types used in this structure are float, integer
character and one user defined data type i.e., address.
3. Struct cust(structure customer)
 User defined data type to hold the details of the customer.
 It includes variables like name, age, address, policy brought ,salary,
policy amount policy term, mode of payment, premium, and SA per
thousand per annum.
 The data types used are float, character, integer and one user defined
data type i.e., address.
4. Struct fback(structure feedback)
 User defined data type to hold the contents of the feedback form.
 Includes variables like age, gender, occupation, income and ratings.
5. Struct poldet(structure policy details)
 Used defined data type to hold the details and terms and conditions
of different policies offered by LIC
 Includes variables like name, minimum age, maximum age, maximum
maturity age, minimum policy amount, maximum policy amount,
minimum sum assured, maximum sum assured, age proofs, etc.
 All the details of the policies are initialized just after the functions
and are displayed to the user when he/she is interested to know
about a specific policy.

7|Page
LIC MANAGEMENT SYSTEM

Functions
Main Menu
 This function gives us the first screen in our project i.e. main menu
screen to the user.
 This function consists of various options for an user.
 This function consists of Customer, Agent, Exit options for an user.
 This function incorporates a switch condition statements which
transfers the execution of the program from one function to the
other function based on the input given by the user.
 Getch() function is used to take the input from an user i.e. C –
customer, A- agent, E- exit.
 Toupper() function is used to convert the lower case characters to
upper case characters and hence input from the user is case
sensitive.

Customer menu
Prototype of this function ->void cusmen();
Function definition->void cusmen()
 The function definition includes user friendly statements i.e.,
“CUSTOMER MENU” which helps the user to select a specific
function, which he desires to proceed on.
 The customer menu includes calling of four functions based on the
requirement of the user.
 The functions are “OLD CUSTOMER FUNCTION”, “POLICIES
FUNCTION”, “BACK FUNCTION”, and “EXIT FUNCTION”.
 Switch case statements are used to help the user switch to the
desired function he requires.
 The user has to provide an appropriate choice to select his/her
desired page of interest.
 Gotoxy statements are used to display the statements at the
required co-ordinates on the output screen.

8|Page
LIC MANAGEMENT SYSTEM

New Customer
 This function is used for the new customer.
 It has several questions for a new user like Name, age, salary Address,
Policy term, Policy amount.
 The user has to fill the form depending on the criteria of the policy chosen
by him.
 Once the new customer fills all the details of the form, the functions gets
the values of premium amount and unique customer code.
 Finally all the details of the user will be displayed in the fresh screen which
gives the details of his premium amount and gives him a unique customer
code for future use.
 Later the user will be directed to the feedback form.

Old Customer
 User has to enter his unique customer code.
 This function matches the code with the existing code in the system and
gives the details of the user.
 If the code doesn’t match then it gives a statement as customer not found.
 It uses strcmp() function to serve this purpose.

New policy
Prototype of this function->void newpol();
Definition of this function->void newpol()
 The function does not return any value and hence void is used.
 This function displays the different policies that are provided by the LIC
and allows the user to choose any policy that he/she would like to
purchase.
 The different policies included in the function are ENDOWMENT POLICY,
MONEY BACK POLICY, JEEVAN KISHORE, and JEEVAN ANAND AND JEEVAN
SURABHI POLICY.
 Again the function asks the user to enter an appropriate choice to select
a specific policy.

9|Page
LIC MANAGEMENT SYSTEM

 Switch statements are used in the function to switch to an appropriate


page specified by the user.
 Functions corresponding to the policies containing the terms and
conditions are called for.

Policy details
Prototype for this function ->void tnccus();
Function definition->void tnccus();
 It consists of the terms and conditions of all the policies.
 This function is used to display the terms and conditions of the policy
selected by the user.
 Once the user provides his choice, the page consisting of the terms and
conditions of the selected policy will be displayed.
 If the user is satisfied with the terms and conditions of the policy, the form
to purchase that policy will be provided.
 The user should enter the details like name, age, salary, etc, appropriate
to the terms of the policy.
 Later a unique customer code will be provided to the user for his future
use.

10 | P a g e
LIC MANAGEMENT SYSTEM

AGENT FUNCTIONS:
void agnmen()
 The function agnmen() displays the agent menu
 It asks the user to enter a choice
 The character input ‘O’ stands for old agent
 The character input ‘N’ stands for new agent ,’T’ stands for terms
and conditions
 getch function is used for the user to make their choice
 The getch() reads a single character directly from the keyboard
 This function uses a header file conio.h.
 Switch-case is used where the switch statement allows a
character variable that is been chosen by a user for equality
against a list of values.
 If the character entered by a user is ‘O’, old agent function is
called
 If user enters ‘N’, the new agent function is called
 If the character entered is ‘T’ ,terms and conditions for agent
function is called
 If the user inputs ‘B’ ,the control goes back to main menu function
and if input is ‘E’ ,control comes out of the switch–case statement
 If the user enter any of these character the control gets back to
getch() function until user gives a appropriate character input.
 goto statement is used to transfer the control back to the getch()
function.

void newagn()

 The function newagn() displays the new agent form


 The new agent form ask the user to enter the new agent details
like name, age, house number, area, city, state, salary and the
policies sold
 If the name, house number, area, city and state entered is
compared with the null character using library function strcmp()
which uses string.h as its header file ,and if the comparison is
equal to zero i.e if there is no input from the user the control goes
back to gets() function where the user has to input the
appropriate information
11 | P a g e
LIC MANAGEMENT SYSTEM

 The age of the agent should be more than 18


 The salary and policy sold is entered by user
 If policy sold is greater than zero and less than 1000,the agent is
categorised under "BRANCH MANAGER CLUB MEMBER"
 If policy sold is greater than 999 and less than 2000,the agent is
categorised under "DIVISIONAL MANAGER CLUB MEMBER"
 If policy sold is greater than 1999 and less than 3000,the agent is
categorised under "ZONAL MANAGER CLUB MEMBER"
 If policy sold is greater than 2999,the agent is categorised under
"CHAIRMAN CLUB MEMBER"
 Then the agents unique code is created using fabs() which is a
mathematical Function that returns the absolute value of the
given argument.
 Then the agent details is displayed on to the screen
 At the end of the function agent menu function is called.

Void oldagn()

 The function oldagn() is used to display old agents details


 It asks the user to input the agent code
 The information of the agent corresponding to the agent code
entered by the user is displayed on to the screen
 The agent information like name ,age, address, policies sold ,agent
category and salary is displayed on to the screen
 Here the flag ,which is a predefined bit or bit sequence that holds
a binary value and it is initialised to zero
 If the flag is 0 ,the agent is not found
 The information of the agent is found only when flag is 1
 At the end of the execution agent menu function is called

void tncagn()

 The function tncagn() displays the terms and conditions for the
agent
 The minimum eligibility for the life insurance agency are:
a) Qualification :12th class passed
b) Age: 18 years completed

12 | P a g e
LIC MANAGEMENT SYSTEM

c) Applicant should have passed the online exam conducted by


NSE-IT
d) Agents license is issued for the 3years in the beginning and
renewed thereafter for another 3years
e) After the completion of 25 hours of agents training
f) Business condition for the agency enforced-12 lives with 1lakh
sum assured
g) First premium income should be one lakh

New agent form


 This function displays the form for a new agent.
 We again use the gotoxy function to get to a specific spot on the screen.
 Using the Cout statement, we display the necessary details, like name,
age, address and policies sold.
 We use Cin statements, we get the data corresponding to all the above
details required.
 There are certain minimum requirements that the company expects a
prospective agent to fulfill, such as minimum age limit, and so, we have
an if statement that compares the input age with 18, and tells
immediately if the user can proceed or not.
 Also, the company isn’t willing to accept a blank space at any of the
spaces.
 Hence, we compare each of the inputs such as addagn.hno, addagn.city
provided by user to a null character ‘\0’ using an if condition.
 To assign the designation of the new agent, we use the number of
policies sold as a basic credential.
 If an agent has sold less than a 1000 policies, then he/she is categorized
as a Branch Manager.
 Else if, number of policies are between 1000 and 2000,then as a
Divisional manager, as a Zonal manager if policies sold are above 2000
and below 3000 and a Chairman if more than 3000.
 After getting all details, we need to generate a unique agent code for
each agent for further accessing.
 To achieve this uniqueness, we perform this equation
fabs(100+(20*agnt[i].age)-(80*i))

13 | P a g e
LIC MANAGEMENT SYSTEM

 We use the agent’s age and the applicant number to reduce the
ambiguity.
 Fabs is function that displays the absolute value of the expression, i.e. ,
ignores the decimal part.
 Next step is to display all the entered details.
 We use a simple Cout statement for displaying the details.

Old agent details


 This function enables an existing agent to view his/her details, on
providing the unique code.
 We create a variable flag, which indicates whether the system has found
the agent or not.
 Using gotoxy statement we get to the specific spot on the screen, and
ask the user to enter the code.
 This code is stored in an integer variable pn.
 Pn is compared with existing codes using an if statement, and on finding
the code in the database, flag value becomes 1, and the agent details
corresponding to the code are displayed.
 If the code is not found ,flag value becomes 0,which in turn calls the
Cout statement that displays to the user that agent of that particular
code wasn’t found.
 After execution, the control is shifted to the agnmen() function again.

Feedback Form:
 Whenever a customer or an user wants to exit from the system, the user
will be transferred to feedback form.
 This functions firstly takes details of an user like name, age, salary etc.
 Once the user fills all his details he will be given with five questions.
 Answers to the questions are to be given in 1-7 ratings, i.e. 1(Poor) and
7(Excellent).
 Once the answer to all questions are submitted user can exit the system.

14 | P a g e
LIC MANAGEMENT SYSTEM

FLOW CHART:

Welcome screen

Main Menu

Customer Menu Agent Menu Exit(Feedback)

New customer Old Customer Feedback New Agent Old Agent Feedback Feedback

Old customer Terms and Old Agent


Policies New agent form conditions
policy details details

New Agent Unique Agent


Feedback Feedback
form code

Unique
Feedback
Customer code

Feedback

15 | P a g e
LIC MANAGEMENT SYSTEM

SOURCE CODE:

/* HEADER FILES */
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<dos.h>
#include<ctype.h>
#include<stdio.h>
#include<process.h>
#include<iomanip.h>
#include<math.h>

/* STRUCTURE DEFINITIONS */

struct address /* STRUCTURE FOR ADDRESS */


{
char hno[30];
char area[30];
char city[30];
char stat[30];
};

struct agn /* STRUCTURE FOR AGENT DETAILS */


{
int code;
char nam[80];
int age;
address addagn;
int polsld; //no. of policies sold
float sal; //salary
char categ[50]; //category
}agnt[15];

struct cust /* STRUCTURE FOR CUSTOMER DETAILS */


{
char nam[80];
int age;

16 | P a g e
LIC MANAGEMENT SYSTEM

address addcust;
char polbt[20]; //name of policy bought
float sal; //salary
int code;
float polamt;
int polterm;
char mod_pay;
float sa_pt_pa; //SA per thousand per annum
float prem; //premium
}custm[15];

struct fback /* STRUCTURE FOR FEEDBACK FORM */


{
int age;
char gndr; //gender
char occp[20]; //occupation
float inc; //income
char a[12]; //ratings
}fbk;

struct poldet /* STRUCTURE FOR POLICY T&C */


{
char nam[20];
int minagemat;
int maxagemat;
int maxmatage;
int minpolt;
int maxpolt;
float minsumass;
char maxsumass[10];
char modeall[25];
float acci_ben;
float CI;
int femliv;
char agepro[40];
char nonmed_gen[5];
char nonmed_spe[5];
char termrideroptn[4];
char crtcalilnesridr[4];
float sa_pt_patrm1_ag1;//SA per thousand per annum
float sa_pt_patrm1_ag2;
float sa_pt_patrm2_ag1;
float sa_pt_patrm2_ag2;

17 | P a g e
LIC MANAGEMENT SYSTEM

};

/* STORING POLICY DETAILS */

poldet endow={"ENDOWMENT POLICY",12,65,75,5,55,50000.00,"No


Limit","All",1.00,
7.26,2,"Birth Certificate / Board Certificate","Yes","Yes",
"Yes","Yes",72.00,73.35,35.80,40.00};

poldet monbak={"MONEY BACK POLICY",13,50,70,20,55,50000.00,"No


Limit","All",
2.00,6.57,2,"Birth Certificate / Board Certificate","Yes","Yes",
"Yes","Yes",65.35,53.45,71.85,61.55};

poldet jeevkish={"JEEVAN KISHORE",0,12,45,15,35,50000.00,"40


Lacs","All",1.50,
6.52,2,"Birth Certificate / Board Certificate","N.A.","N.A.",
"No","No",49.15,29.25,49.15,29.25};

poldet jeevannd={"JEEVAN ANAND",18,65,75,5,57,100000.00,"No Limit",


"All Except Single",1.5,6.45,2,"Birth Certificate / Board
Certificate",
"Yes","Yes","No","Yes",50.95,39.05,155.75,86.25};

poldet jeevsurbh={"JEEVAN SURABHI",14,50,70,15,25,50000.00,"No


Limit","All",
1.00,6.11,2,"Birth Certificate / Board Certificate","Yes",
"Yes","No","No",108.80,91.30,123.00,112.80};

/* FUNCTION PROTOTYPING */

/* FUNCTION FOR DISPLAYING MAIN MENU */

void welcome();//display welcome page


void mainmen();//display main menu

/* CUSTOMER FUNCTIONS */

void cusmen();//display customer menu


void newpol();//display new policies
void tnccus(poldet pol);//display details of policies
void newcus(poldet pol);//new customer data input
float premcalc(cust custm,poldet pol);//premium calculation

18 | P a g e
LIC MANAGEMENT SYSTEM

void oldcus();//display old customer's previous policy details


void feed();//display feedback form
char feedval();//input & test the ratings of feedback form

/* AGENT FUNCTIONS */

void agnmen();//display agent menu


void newagn();//new agent data input
void oldagn();//old agent details
void tncagn();//display terms & conditions for agents

/* MAIN FUNCTION */
void main()
{
textcolor(WHITE);
textbackground(CYAN);

welcome();
}

/* WELCOME SCREEN */
void welcome()
{
textcolor(BLUE);
textbackground(WHITE);
clrscr();

for(int x=0;x<80;x++)
{
gotoxy(x,0);
cout<<"•";

for(int y=0;y<48;y++)
{
gotoxy(0,y);
cout<<"•\n";
delay(5);
}

for(x=79;x>0;x--)

19 | P a g e
LIC MANAGEMENT SYSTEM

{
gotoxy(x,49);
cout<<"•";
delay(5);
}

gotoxy(80,49);
cout<<"•";

for(y;y>0;y--)
{
gotoxy(80,y);
cout<<"•\n";
delay(5);
}

gotoxy(10,10);
puts("*********************** W E L C O M E
*********************** ");
gotoxy(18,16);
puts("I N S U R A N C E S O F T W A R E");

gotoxy(38,40);
puts(" *** PRESS ANY KEY TO CONTINUE ***");

getch();
mainmen();
}

/* MAIN MENU */
void mainmen()
{
char a;
clrscr();
cout<<"\n";

for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<16;y++)
{

20 | P a g e
LIC MANAGEMENT SYSTEM

delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(25,5);
cout<<"WELCOME TO LIFE INSURANCE COMPANY";
gotoxy(25,6);
cout<<"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$";
gotoxy(36,9);
cout<<" MENU";
gotoxy(36,12);
cout<<"C=CUSTOMER";
gotoxy(36,14);
cout<<"A=AGENT";
gotoxy(36,16);
cout<<"X=EXIT";

cout<<"\n\n";
for(x=1;x<80;x++)
{
delay(5);
cout<<"•";
}

for(y=2;y<19;y++)
{
delay(5);
gotoxy(80,y);
cout<<"•";
}

gotoxy(30,20);
cout<<"Please enter your choice : ";
x:a=getch();
switch(a)
{
case 'c':
case 'C':cusmen();
break;
case 'a':
case 'A':agnmen();
break;
case 'x':
case 'X':feed();

21 | P a g e
LIC MANAGEMENT SYSTEM

break;
default:goto x;
}
}

/* CUSTOMER MENU */
void cusmen()
{
textcolor(CYAN);
textbackground(WHITE);
char b;
x:clrscr();

cout<<"\n";
for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<16;y++)
{
delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(36,5);
cout<<"CUSTOMER MENU";
gotoxy(36,6);
cout<<"$$$$$$$$$$$$$";
gotoxy(36,9);
cout<<"O=OLD CUSTOMER";
gotoxy(36,11);
cout<<"P=POLICIES";
gotoxy(36,13);
cout<<"B=BACK";
gotoxy(36,15);
cout<<"X=EXIT";

cout<<"\n\n";
for(x=0;x<80;x++)
{
delay(5);

22 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"•";
}

for(y=2;y<18;y++)
{
gotoxy(80,y);
delay(5);
cout<<"•";
}

gotoxy(30,19);
cout<<"Please enter your choice : ";
y:b=getch();

switch(b)
{
case 'o':
case 'O':oldcus();
break;
case 'p':
case 'P':newpol();
break;
case 'b':
case 'B':mainmen();
break;
case 'x':
case 'X':feed();
break;
default:goto y;
}
}

/* NEW POLICY */
void newpol()
{
textcolor(RED);
textbackground(CYAN);
char inp;
clrscr();
textcolor(RED);
textbackground(CYAN);

cout<<"\n";

23 | P a g e
LIC MANAGEMENT SYSTEM

for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<17;y++)
{
delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(30,5);
cout<<"LIFE INSURANCE POLICIES";
gotoxy(30,6);
cout<<"$$$$$$$$$$$$$$$$$$$$$$$";
gotoxy(31,9);
cout<<"1. Endowment Policy";
gotoxy(31,11);
cout<<"2. Money Back Policy";
gotoxy(31,13);
cout<<"3. Jeevan Kishore";
gotoxy(31,15);
cout<<"4. Jeevan Anand";
gotoxy(31,17);
cout<<"5. Jeevan Surabhi";

cout<<"\n\n";
for(x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(y=2;y<19;y++)
{
delay(5);
gotoxy(80,y);
cout<<"•";
}

gotoxy(31,21);
cout<<"B=Back";
gotoxy(31,23);

24 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"X=Exit";
gotoxy(31,25);
cout<<"Please enter your choice : ";
x:inp=getch();

switch(inp)
{
case '1':tnccus(endow);

case '2':tnccus(monbak);

case '3':tnccus(jeevkish);

case '4':tnccus(jeevannd);

case '5':tnccus(jeevsurbh);

case 'b':
case 'B':cusmen();

case 'x':
case 'X':exit(0);

default:goto x;
}
}

/* POLICY DETAILS */
void tnccus(poldet pol)
{
textcolor(RED);
textbackground(WHITE);
char in;
clrscr();

cout<<"\n";
for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<32;y++)
{

25 | P a g e
LIC MANAGEMENT SYSTEM

delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(25,5);
cout<<"TERMS & CONDITIONS FOR ";
puts(pol.nam);
gotoxy(12,8);
cout<<"¯ Min./Max. age at entry : ";
cout<<pol.minagemat<<" / "<<pol.maxagemat;
gotoxy(12,10);
cout<<"¯ Max. maturity age : "<<pol.maxmatage;
gotoxy(12,12);
cout<<"¯ Min./Max. policy term : "<<pol.minpolt<<" / "<<pol.maxpolt;
gotoxy(12,14);
cout<<"¯ Min./Max. sum assured : "<<pol.minsumass<<" / ";
puts(pol.maxsumass);
gotoxy(12,16);
cout<<"¯ Mode allowed : ";
puts(pol.modeall);
gotoxy(12,18);
cout<<"¯ Accident Benefit : "<<pol.acci_ben;
cout<<" per thousand S.A. per annum";
gotoxy(12,20);
cout<<"¯ Compound Interest : "<<pol.CI;
gotoxy(12,22);
cout<<"¯ Female Lives : "<<pol.femliv;
gotoxy(12,24);
cout<<"¯ Age Proof : ";
puts(pol.agepro);
gotoxy(12,26);
cout<<"¯ Non Medical (General) : ";
puts(pol.nonmed_gen);
gotoxy(12,28);
cout<<"¯ Non Medical (Special) : ";
puts(pol.nonmed_spe);
gotoxy(12,30);
cout<<"¯ Term rider option : ";
puts(pol.termrideroptn);
gotoxy(12,32);
cout<<"¯ Critical illness rider : ";
puts(pol.crtcalilnesridr);

cout<<"\n";

26 | P a g e
LIC MANAGEMENT SYSTEM

for(x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(y=2;y<34;y++)
{
delay(5);
gotoxy(80,y);
cout<<"•";
}

gotoxy(12,36);
cout<<"Does this policy satisfy your needs?(Y/N) : ";
a:in=getch();

switch(in)
{
case 'Y':
case 'y':newcus(pol);

case 'n':
case 'N':newpol();

default:goto a;
}
}

/* NEW POLICY FORM */


void newcus(poldet pol)
{
int j;
clrscr();

for(int i=0;i<15;i++)
{
if(strcmp(custm[i].nam,"\0")==0)
break;
}

gotoxy(28,3);
cout<<"POLICY FORM FOR ";
puts(pol.nam);

27 | P a g e
LIC MANAGEMENT SYSTEM

gotoxy(25,6);
cout<<"Please enter the following details : ";
gotoxy(25,8);
cout<<"¯ NAME : ";
a:gets(custm[i].nam);
if(strcmp(custm[i].nam,"\0")==0)
goto a;
gotoxy(25,10);
cout<<"¯ AGE : ";
b:cin>>custm[i].age;
if(custm[i].age<pol .minagemat||custm[i].age>pol.maxagemat)
{
cout<<"Age must be between "<<pol.minagemat<<" to
"<<pol.maxagemat<<" years";
goto b;
}
else
{
gotoxy(20,40);
for(j=0;j<34;j++)
cout<<" ";
}
gotoxy(25,12);
cout<<"¯ ADDRESS : ";
gotoxy(29,14);
cout<<"* HOUSE NO. : ";
c:gets(custm[i].addcust.hno);
if(strcmp(custm[i].addcust.hno,"\0")==0)
goto c;
gotoxy(29,16);
cout<<"* AREA : ";
d:gets(custm[i].addcust.area);
if(strcmp(custm[i].addcust.area,"\0")==0)
goto d;

gotoxy(29,18);
cout<<"* CITY : ";
e:gets(custm[i].addcust.city);
if(strcmp(custm[i].addcust.city,"\0")==0)
goto e;
gotoxy(29,20);
cout<<"* STATE : ";
f:gets(custm[i].addcust.stat);
if(strcmp(custm[i].nam,"\0")==0)
goto f;

28 | P a g e
LIC MANAGEMENT SYSTEM

gotoxy(25,22);
if(strcmp(pol.nam,"JEEVAN KISHORE"))
cout<<"¯ SALARY : ";
if(strcmp(pol.nam,"JEEVAN KISHORE"))
cin>>custm[i].sal;
gotoxy(25,24);
cout<<"¯ POLICY AMOUNT : ";
g:cin>>custm[i].polamt;
if(custm[i].polamt<pol.minsumass)
{
gotoxy(20,40);
cout<<"Policy amount must be more than Rs. "<<pol.minsumass;
goto g;
}
else
{
gotoxy(20,40);
for(j=0;j<50;j++)
cout<<" ";
}
cout<<endl;
gotoxy(25,26);
cout<<"¯ MODE OF PAYMENT : "<<endl;
cout<<"( Q=QUARTERLY, H=HALF YEARLY, Y=YEARLY)";
h:custm[i].mod_pay=getch();
cout<<endl;
switch(custm[i].mod_pay)
{
case 'q':
case 'Q':
case 'h':
case 'H':
case 'y':
case 'Y':custm[i].mod_pay=toupper(custm[i].mod_pay);
cout<<custm[i].mod_pay;
getch();
break;
default:goto h;
}
gotoxy(25,30);
cout<<"¯ POLICY TERM : "<<endl;
for(j=0;j<20;j++)
cout<<" ";

29 | P a g e
LIC MANAGEMENT SYSTEM

k:custm[i].polterm=0;
gotoxy(41,30);
for(j=0;j<15;j++)
cout<<" ";
cin>>custm[i].polterm;
cout<<endl;
if((custm[i].polterm<pol.minpolt)||(custm[i].polterm>pol.maxpolt))
{
gotoxy(20,40);
cout<<"Policy term must be between "<<pol.minpolt;
cout<<" to "<<pol.maxpolt<<" years";
goto k;
}
else
{
gotoxy(20,40);
for(j=0;j<34;j++)
cout<<" ";
}

strcpy(custm[i].polbt,pol.nam);//copy the policy name to customer's


details

custm[i].code=fabs((100*i)+89-(custm[i].age));//create unique code

custm[i].prem=premcalc(custm[i],pol);//calculate premium

clrscr();
gotoxy(30,3); \

cout<<"Your details are : ";


gotoxy(25,6);
cout<<"¯ NAME : ";
puts(custm[i].nam);
gotoxy(25,8);
cout<<"¯ AGE : "<<custm[i].age;
gotoxy(25,10);
cout<<"¯ ADDRESS : ";
gotoxy(29,12);
cout<<"* HOUSE NO. : ";
puts(custm[i].addcust.hno);
gotoxy(29,14);
cout<<"* AREA : ";
puts(custm[i].addcust.area);

30 | P a g e
LIC MANAGEMENT SYSTEM

gotoxy(29,16);
cout<<"* CITY : ";
puts(custm[i].addcust.city);
gotoxy(29,18);
cout<<"* STATE : ";
puts(custm[i].addcust.stat);
gotoxy(25,20);
cout<<"¯ POLICY NAME : ";
puts(custm[i].polbt);
gotoxy(25,22);
if(strcmp(pol.nam,"JEEVAN KISHORE"))
cout<<"¯ SALARY : Rs. "<<custm[i].sal;
gotoxy(25,24);
cout<<"¯ POLICY AMOUNT : Rs. "<<custm[i].polamt;
gotoxy(25,26);
cout<<"¯ POLICY TERM : "<<custm[i].polterm<<" years";
gotoxy(25,28);
cout<<"¯ MODE OF PAYMENT : ";
switch(custm[i].mod_pay)
{
case 'Y':cout<<"YEARLY";
break;
case 'H':cout<<"HALF YEARLY";
break;
case 'Q':cout<<"QUARTERLY";
}
gotoxy(25,30);
cout<<endl<<"¯ PREMIUM : Rs. "<<custm[i].prem<<" per
annum"<<endl;
gotoxy(25,32);
cout<<endl<<"¯ CUSTOMER CODE : "<<custm[i].code<<endl;

getch();
cusmen();
}

/* PREMIUM CALCULATION */
float premcalc(cust custm,poldet pol)
{
float a;

if(custm.age<(pol.minagemat+pol.maxagemat)/2)
{
if(custm.polterm<=(pol.minpolt+pol.maxpolt)/2)

31 | P a g e
LIC MANAGEMENT SYSTEM

custm.sa_pt_pa=pol.sa_pt_patrm1_ag1;
if(custm.polterm>(pol.minagemat+pol.maxagemat)/2)
custm.sa_pt_pa=pol.sa_pt_patrm2_ag1;
}

if(custm.age>=(pol.minagemat+pol.maxagemat)/2)
{
if(custm.polterm<=(pol.minpolt+pol.maxpolt)/2)
custm.sa_pt_pa=pol.sa_pt_patrm1_ag2;
if(custm.polterm>(pol.minpolt+pol.maxpolt)/2)
custm.sa_pt_pa=pol.sa_pt_patrm2_ag2;
}

if(custm.mod_pay=='h'||custm.mod_pay=='H')
custm.sa_pt_pa*=0.985;

else if(custm.mod_pay=='y'||custm.mod_pay=='Y')
custm.sa_pt_pa*=0.97;

if(custm.polamt>pol.minsumass&&custm.polamt<=(2*pol.minsumass))
custm.sa_pt_pa-=1;

if(custm.polamt>(2*pol.minsumass))
custm.sa_pt_pa-=2;

a=(custm.sa_pt_pa)*(custm.polamt)/1000;

return a;
}

/* OLD CUSTOMER'S DETAILS */


void oldcus()
{
int flag=0;
clrscr();

gotoxy(25,6);
cout<<"PLEASE ENTER CUSTOMER CODE : ";
int pn;
cin>>pn;

for(int i=0;i<15;i++)
{
if(pn==custm[i].code)//check the customer code

32 | P a g e
LIC MANAGEMENT SYSTEM

{
flag=1;
gotoxy(25,10);
cout<<"¯ NAME : ";
puts(custm[i].nam);
gotoxy(25,12);
cout<<"¯ AGE : "<<custm[i].age;
gotoxy(25,14);
cout<<"¯ ADDRESS : ";
gotoxy(29,16);
cout<<"* HOUSE NO. : ";
puts(custm[i].addcust.hno);
gotoxy(29,18);
cout<<"* AREA : ";
puts(custm[i].addcust.area);
gotoxy(29,20);
cout<<"* CITY : ";
puts(custm[i].addcust.city);
gotoxy(29,22);
cout<<"* STATE : ";
puts(custm[i].addcust.stat);
gotoxy(25,24);
cout<<"¯ POLICY NAME : ";
puts(custm[i].polbt);
gotoxy(25,26);
cout<<"¯ SALARY : Rs. "<<custm[i].sal;
gotoxy(25,28);
cout<<"¯ POLICY AMOUNT : Rs. "<<custm[i].polamt;

gotoxy(25,30);
cout<<"¯ POLICY TERM : "<<custm[i].polterm<<" years";
gotoxy(25,32);
cout<<"¯ MODE OF PAYMENT : ";
switch(custm[i].mod_pay)
{
case 'Y':cout<<"YEARLY";
break;
case 'H':cout<<"HALF YEARLY";
break;
case 'Q':cout<<"QUARTERLY";
}
gotoxy(25,34);
cout<<"¯ PREMIUM : Rs. "<<custm[i].prem<<" per
annum";

33 | P a g e
LIC MANAGEMENT SYSTEM

getch();
cusmen();
}
}

if(flag==0) //if customer is not found


{
gotoxy(25,8);
cout<<"SORRY, CUSTOMER NOT FOUND";
}

getch();
cusmen();
}

/* AGENT MENU */
void agnmen()
{
char b;
x:clrscr();

cout<<"\n";
for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<17;y++)
{
delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(36,5);
cout<<"AGENT MENU";
gotoxy(36,6);
cout<<"$$$$$$$$$$";
gotoxy(36,9);
cout<<"O=OLD AGENT";
gotoxy(36,11);
cout<<"N=NEW AGENT";
gotoxy(36,13);

34 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"T=TERMS & CONDITIONS";


gotoxy(36,15);
cout<<"B=BACK";
gotoxy(36,17);
cout<<"X=EXIT";

cout<<"\n\n";
for(x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(y=2;y<19;y++)
{
delay(5);
gotoxy(80,y);
cout<<"•";
}

gotoxy(30,21);
cout<<"Please enter your choice : ";
y:b=getch();

switch(b)
{
case 'o':
case 'O':oldagn();
break;
case 'n':
case 'N':newagn();
break;
case 'T':
case 't':tncagn();
goto x;
case 'b':
case 'B':mainmen();
break;
case 'X':
case 'x':exit(0);
break;
default:goto y;
}
}

35 | P a g e
LIC MANAGEMENT SYSTEM

/* NEW AGENT FORM */


void newagn()
{
int o;
clrscr();

for(int i=0;i<15;i++)
{
if(strcmp(agnt[i].nam,"\0")==0)
break;
}

gotoxy(34,3);
cout<<"NEW AGENT FORM";
gotoxy(25,6);
cout<<"Please enter the following details : ";
gotoxy(25,8);
cout<<"¯ NAME : ";
gotoxy(25,10);
cout<<"¯ AGE : ";
gotoxy(25,12);
cout<<"¯ ADDRESS : ";
gotoxy(29,14);
cout<<"* HOUSE NO. : ";
gotoxy(29,16);
cout<<"* AREA : ";
gotoxy(29,18);
cout<<"* CITY : ";
gotoxy(29,20);
cout<<"* STATE : ";
gotoxy(25,22);
cout<<"¯ SALARY : ";
gotoxy(25,24);
cout<<"¯ POLICIES SOLD : ";

x:gotoxy(34,8);
gets(agnt[i].nam);
if(strcmp(agnt[i].nam,"\0")==0)
goto x;

y:gotoxy(33,10);
cin>>agnt[i].age;
if(agnt[i].age<18)
{

36 | P a g e
LIC MANAGEMENT SYSTEM

gotoxy(20,40);
cout<<"Age must be more than 18";
gotoxy(33,10);
for(o=0;o<4;o++)
cout<<" ";
goto y;
}
else
{
gotoxy(20,40);
for(o=0;o<35;o++)
cout<<" ";
}

a:gotoxy(43,14);
gets(agnt[i].addagn.hno);
if(strcmp(agnt[i].addagn.hno,"\0")==0)
goto a;

b:gotoxy(38,16);
gets(agnt[i].addagn.area);
if(strcmp(agnt[i].addagn.area,"\0")==0)
goto b;

c:gotoxy(38,18);
gets(agnt[i].addagn.city);
if(strcmp(agnt[i].addagn.city,"\0")==0)
goto c;

d:gotoxy(39,20);
gets(agnt[i].addagn.stat);
if(strcmp(agnt[i].addagn.stat,"\0")==0)
goto d;

gotoxy(36,22);
cin>>agnt[i].sal;

gotoxy(43,24);
cin>>agnt[i].polsld;

if((agnt[i].polsld)>0&&(agnt[i].polsld)<1000) //categorise the agent


strcpy(agnt[i].categ,"BRANCH MANAGER CLUB MEMBER");

else if((agnt[i].polsld)>999&&(agnt[i].polsld)<2000)
strcpy(agnt[i].categ,"DIVISIONAL MANAGER CLUB MEMBER");

37 | P a g e
LIC MANAGEMENT SYSTEM

else if((agnt[i].polsld)>1999&&(agnt[i].polsld)<3000)
strcpy(agnt[i].categ,"ZONAL MANAGER CLUB MEMBER");

else if((agnt[i].polsld)>2999)
strcpy(agnt[i].categ,"CHAIRMAN CLUB MEMBER");

agnt[i].code=fabs(100+(20*agnt[i].age)-(80*i)); //create unique code

clrscr();
gotoxy(34,3);
cout<<"Your details are : ";
gotoxy(25,6);
cout<<"¯ NAME : ";
puts(agnt[i].nam);
gotoxy(25,8);
cout<<"¯ AGE : "<<agnt[i].age;
gotoxy(25,10);
cout<<"¯ SALARY : Rs. "<<agnt[i].sal;
gotoxy(25,12);
cout<<"¯ ADDRESS : ";
gotoxy(29,14);
cout<<"* HOUSE NO. : ";
puts(agnt[i].addagn.hno);
gotoxy(29,16);
cout<<"* AREA : ";
puts(agnt[i].addagn.area);
gotoxy(29,18);
cout<<"* CITY : ";
puts(agnt[i].addagn.city);
gotoxy(29,20);
cout<<"* STATE : ";
puts(agnt[i].addagn.stat);
gotoxy(25,22);
cout<<"¯ POLICIES SOLD : "<<agnt[i].polsld;
gotoxy(25,24);
cout<<"¯ AGENT CATEGORY : ";
puts(agnt[i].categ);
gotoxy(25,26);
cout<<"¯ AGENT CODE : "<<agnt[i].code;

getch();
agnmen();
}

38 | P a g e
LIC MANAGEMENT SYSTEM

/* OLD AGENT'S DETAILS */


void oldagn()
{
int flag=0;
clrscr();

gotoxy(25,6);
cout<<"PLEASE ENTER THE AGENT CODE : ";
int pn;
cin>>pn;

for(int i=0;i<15;i++)
{
if(pn==agnt[i].code)//check agent code
{
flag=1;
gotoxy(25,9);
cout<<"¯ NAME : ";
cout<<agnt[i].nam;
gotoxy(25,11);
cout<<"¯ ADDRESS : ";
gotoxy(29,13);
cout<<"* HOUSE NO. : ";
puts(agnt[i].addagn.hno);
gotoxy(29,15);
cout<<"* AREA : ";
puts(agnt[i].addagn.area);
gotoxy(29,17);
cout<<"* CITY : ";
puts(agnt[i].addagn.city);
gotoxy(29,19);
cout<<"* STATE : ";
puts(agnt[i].addagn.stat);
gotoxy(25,21);
cout<<"¯ POLICIES SOLD : ";
cout<<agnt[i].polsld;
gotoxy(25,23);
cout<<"¯ AGENT CATEGORY : ";
puts(agnt[i].categ);
gotoxy(25,25);
cout<<"¯ SALARY : Rs. ";
cout<<agnt[i].sal;
getch();
agnmen();

39 | P a g e
LIC MANAGEMENT SYSTEM

}
}

if(flag==0)//if agent is not found


{
gotoxy(25,8);
cout<<"SORRY, AGENT NOT FOUND";
}

getch();

agnmen();
}

/* T&C FOR AGENTS */


void tncagn()
{
clrscr();

cout<<"\n";
for(int x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(int y=1;y<34;y++)
{
delay(5);
gotoxy(0,y);
cout<<"•\n";
}

gotoxy(25,5);
cout<<"TERMS & CONDITIONS FOR AGENT";
gotoxy(25,6);
cout<<"$$$$$$$$$$$$$$$$$$$$$$$$$$$$";
gotoxy(15,10);
cout<<"¯ MINIMUM ELIGIBILITY FOR LIFE INSURANCE AGENCY";
gotoxy(19,12);
cout<<"* QUALIFICATION : 12th class passed";
gotoxy(19,14);
cout<<"* AGE : 18 years completed";
gotoxy(19,16);

40 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"* Applicant should have passed the online exam";


gotoxy(21,18);
cout<<"conducted by NSE-IT";
gotoxy(15,22);
cout<<"¯ AGENT'S LICENSE is issued for 3 years in the";
gotoxy(17,24);
cout<<"beginning and renewed thereafter for another 3 years";
gotoxy(17,26);
cout<<"after the completion of 25 hours of Agent's training.";
gotoxy(15,30);
cout<<"¯ BUSINESS CONDITION FOR THE AGENCY ENFORCED";
gotoxy(19,32);
cout<<"* 12 lives with 1 lac sum assured";
gotoxy(19,34);
cout<<"* First Premium Income(FPI) : Rs. 1 lac";

cout<<"\n\n";
for(x=0;x<80;x++)
{
delay(5);
cout<<"•";
}

for(y=2;y<36;y++)
{
delay(5);
gotoxy(80,y);
cout<<"•";
}

getch();
}

/* DISPLAY FEEDBACK FORM */


void feed()
{
char str[9]="THANK YOU";
clrscr();

gotoxy(34,3);
cout<<"FEEDBACK FORM";
gotoxy(34,4);
cout<<"*************";
gotoxy(6,6);

41 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"Please enter the following details : ";


gotoxy(6,8);
cout<<"AGE : ";
cin>>fbk.age;
gotoxy(6,10);
cout<<"GENDER (m/f) : ";
b:fbk.gndr=getch();
switch(fbk.gndr)
{
case 'm':
case 'M':

case 'f':
case 'F':cout<<fbk.gndr;
break;

default:goto b;
}
getch();
gotoxy(6,12);
cout<<"OCCUPATION : ";
c:gets(fbk.occp);
if(strcmp(fbk.occp,"\0")==0)
goto c;
gotoxy(6,14);
cout<<"MONTHLY INCOME : ";
cin>>fbk.inc;
gotoxy(32,16);
cout<<"QUESTIONAIRE FORM";
gotoxy(32,17);
cout<<"*****************";
gotoxy(6,19);
cout<<"How would you rate the company's performance on the following
service features";

gotoxy(6,21);
cout<<"using (1-7) where \"1\" indicates LOW rating & \"7\" indicates
HIGH rating";
gotoxy(6,23);
cout<<"1. Performing the service right the first time : ";
fbk.a[0]=feedval();
gotoxy(6,25);
cout<<"2. Agents give you prompt service : ";
fbk.a[1]=feedval();
cout<<endl;

42 | P a g e
LIC MANAGEMENT SYSTEM

cout<<"3. Agents are always willing to help you : ";


fbk.a[2]=feedval();
cout<<endl;
gotoxy(6,29);
cout<<"4. You feel safe in your transactions : ";
fbk.a[3]=feedval();
gotoxy(6,31);
cout<<endl;
cout<<"5. Agents understand your specific needs : ";
fbk.a[4]=feedval();

gotoxy(36,47);
for(int x=0;x<9;x++)
{
cout<<str[x];
delay(100);
}

getch();
exit(0);
}

/* INPUT THE RATINGS & CHECK THEM */


char feedval()
{
char x;
d:x=getch();

if(x>'0'&&x< '8')
cout<<x;

else
goto d;

getch();

return x;
}

43 | P a g e
LIC MANAGEMENT SYSTEM

SCREEN SHOTS
Main Menu:

Customer Menu:

44 | P a g e
LIC MANAGEMENT SYSTEM

Agent Menu:

Policy Details:

45 | P a g e
LIC MANAGEMENT SYSTEM

Form Fill up Process:

Old Customer:

46 | P a g e
LIC MANAGEMENT SYSTEM

CONCLUSION

Existing LIC Database system do not provide facility to select the


particular policy by going through each policy details. Customers has to
be dependent on agent to get details on particular policy. While taking any
particular policy, customers do not able to get information what will be
the minimum instalment to be made and in what mode. Agent are also not
able to check their account any time as per their requirement and the
details of customers who have taken policy from them along with their
policy maturity date. The present system do not provide the correct
medium for the agents to know their commissions which has been made
while selling any particular policy.

47 | P a g e

Vous aimerez peut-être aussi