Page

Employee Management System In C++

#include<iostream>
#include<cstring>
#include<cstdlib>
#include<iomanip>
#include<windows.h>
//#include <ctime>
//#include <dos.h>
#include<dos.h>
#include<conio.h>
#include<cstdio>
#define max 20
using namespace std;
struct employee
{
 char name[20];
 long int code;
 char designation[20];
 int exp;
 int age;
};
int num;
employee emp[max],tempemp[max],sortemp[max],sortemp1[max];
int main()
{
 system("cls");
 void build();
 void list();
 void insert();
 void deletes();
 void edit();
 void search();
 void sort();
 char option;
 void menu();
 menu();
 while((option=cin.get())!='q')
 {
  switch(option)
  {
   case 'b':
         build();
         break;
   case 'l':
         list();
         break;
   case 'i':
         insert();
         break;
   case 'd':
         deletes();
         break;
   case 'e':
       edit();
        break;
   case 's':
        search();
        break;
   case 'n':
         sort();
         break;
  }
   menu();
  }
  return 0;
 }
 void menu()
 {
  system("cls");
 // highvideo();
cout<<"          ";
printf("\n*****  Employees Management System 1.0 ***** ");




//normvideo();
cout<<endl;
cout<<"             ";
cout<<"\n\t\t Press  b---->Built The Employee Table ";
cout<<"             ";
cout<<"\n\t\t Press  l---->List The Employee Table  ";
cout<<"             ";
cout<<"\n\t\t Press  i---->Insert New Entry        ";
cout<<"             ";
cout<<"\n\t\t Press  d---->Delete An Entry         ";
cout<<"             ";
cout<<"\n\t\t Press  e---->Edit An Entry           ";
cout<<"             ";
cout<<"\n\t\t Press  s---->Search Arecord          ";
cout<<"             ";
cout<<"\n\t\t Press  n---->Sort The Table          ";
cout<<"             ";
cout<<"\n\t\t Press  q---------->Quit Program              ";
cout<<"             ";
cout<<"\n\n \t\t Select Your Option Please ====> ";
}


void build()
{


 system("cls");
// highvideo();
 printf("Build The Table");
 cout<<endl;
 //normvideo();
 cout<<"maximum number of entries  -----  >  20"<<endl;
 cout<<"how many do you want    ----->";
 cin>>num;
 cout<<"Enter The Following Items"<<endl;
 for(int i=0;i<=num-1;i++)
 {
  cout<<" Name  ";
  cin>>emp[i].name;
  cout<<"Code  ";
  cin>>emp[i].code;
  cout<<"Designation  ";
  cin>>emp[i].designation;
  cout<<"Years of Experience  ";
  cin>>emp[i].exp;
  cout<<"Age  ";
  cin>>emp[i].age;
 }
  cout<<"going to main menu";
 Sleep(500);
}


void  list()
{
 system("cls");
// highvideo();
 printf("       ********List The Table********");
 cout<<endl;
 //normvideo();
 cout<<"     Name     Code     Designation     Years(EXP)     Age "<<endl;
 cout<<"    ------------------------------------------------------"<<endl;
 for(int i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<emp[i].name;
  cout<<setw(6)<<emp[i].code;
  cout<<setw(15)<<emp[i].designation;
  cout<<setw(10)<<emp[i].exp;
  cout<<setw(15)<<emp[i].age;
  cout<<endl;
 }
  cout<<"going to main menu";
 getch();
  }
  void insert()
  {
  system("cls");
  int i=num;
  num+=1;
 // highvideo();
  printf("Insert New Record");
  cout<<endl;
  //normvideo();
  cout<<"Enter The Following Items"<<endl;
  cout<<"Name  ";
  cin>>emp[i].name;
  cout<<"Code  ";
  cin>>emp[i].code;
  cout<<"Designation  ";
  cin>>emp[i].designation;
  cout<<"Years of Experience  ";
  cin>>emp[i].exp;
  cout<<"Age  ";
  cin>>emp[i].age;
  cout<<endl<<endl;
  cout<<"going to main menu";
 Sleep(500);


  }




  void deletes()
  {
   system("cls");
  // highvideo();
   int code;
   int check;
   printf("Delete An Entry");
   //normvideo();
   cout<<endl;
   cout<<"Enter An JobCode To Delete That Entry  ";
   cin>>code;
   int i;
   for(i=0;i<=num-1;i++)
   {
    if(emp[i].code==code)
    {
      check=i;
    }
   }
   for(i=0;i<=num-1;i++)
   {
    if(i==check)
    {
    continue;
    }
    else
    {
    if(i>check)
    {
     tempemp[i-1]=emp[i];
    }
    else
    {
     tempemp[i]=emp[i];
    }
     }
   }
  num--;


  for(i=0;i<=num-1;i++)
  {
   emp[i]=tempemp[i];
  }
 }


void edit()
{
 system("cls");
 int jobcode;
// highvideo();
 printf("          Edit An Entry           ");
 cout<<endl;
 cout<<endl;
 int i;
 void editmenu();
 void editname(int);
 void editcode(int);
 void editdes(int);
 void editexp(int);
 void editage(int);
 char option;
 //normvideo();
 cout<<"Enter An jobcode To Edit An Entry----  ";
 cin>>jobcode;
  editmenu();
 for(i=0;i<=num-1;i++)
   {
    if(emp[i].code==jobcode)
    {


while((option=cin.get())!='q')
{
      switch(option)
      {
       case 'n':
            editname(i);
            break;
       case 'c':
            editcode(i);
            break;
       case 'd':
            editdes(i);
            break;
       case 'e':
            editexp(i);
            break;
       case 'a':
           editage(i);
           break;
     }
   editmenu();
    }
  }
  }
  }
  void editmenu()
  {
   system("cls");
   cout<<"        What Do You Want To edit";
   cout<<"          n--------->Name ";
   cout<<"          c--------->Code ";
   cout<<"          d--------->Designation";
   cout<<"          e--------->Experience ";
   cout<<"          a--------->Age        ";
   cout<<"              q----->QUIT                            ";
   cout<<"   Options Please ---->>>  ";
  }
  void editname(int i)
  {
     cout<<"Enter New Name----->  ";
     cin>>emp[i].name;
  }
  void editcode(int i)
  {
   cout<<"Enter New Job Code----->  ";
   cin>>emp[i].code;
  }
  void editdes(int i)
  {
   cout<<"enter new designation----->  ";
   cin>>emp[i].designation;
  }
  void editexp(int i)
  {
   cout<<"Enter new Years of Experience";
   cin>>emp[i].exp;
  }
  void editage(int i)
  {
   cout<<"Enter new Age ";
   cin>>emp[i].age;
  }


void search()
{
 system("cls");
 // highvideo();
  printf("Welcome To Search Of Employee Database ");
  //normvideo();
  cout<<endl;
  cout<<endl;
  int jobcode;
  cout<<"You Can Search Only By Jobcode Of An Employee";
  cout<<"Enter Code Of An Employee                    ";
 cin>>jobcode;
 for(int i=0;i<=num-1;i++)
   {
    if(emp[i].code==jobcode)
    {


    cout<<"     Name     Code     Designation     Years(EXP)     Age ";
 cout<<"     ------------------------------------------------------                                  ";
  cout<<setw(13)<<emp[i].name;
  cout<<setw(6)<<emp[i].code;
  cout<<setw(15)<<emp[i].designation;
  cout<<setw(10)<<emp[i].exp;
  cout<<setw(15)<<emp[i].age;
  cout<<endl;
 }


  }
    cout<<"going to main menu";
 getch();




}


void sort()
{
 system("cls");
// highvideo();
 printf("Sort The Databse By JobCode");
 //normvideo();
 void sortmenu();
 void sortname();
 void sortcode();
 void sortdes();
 void sortexp();
 char option;
 void sortage();


 cout<<endl;
 cout<<endl;
 sortmenu();
 while((option=cin.get())!='q')
 {
  switch(option)
  {
   case 'n':
          sortname();
          break;
   case 'c':
          sortcode();
          break;
   case 'd':
          sortdes();
          break;
   case 'e':
          sortexp();
          break;
   case 'a':
          sortage();
          break;
   }
   sortmenu();
  }
 }




 void sortmenu()
 {
    system("cls");
   cout<<"          What Do You Want To edit";
   cout<<"          n--------->Name         ";
   cout<<"          c--------->Code         ";
   cout<<"          d--------->Designation  ";
   cout<<"          e--------->Experience   ";
   cout<<"          a--------->Age          ";
   cout<<"                               q----->QUIT            ";
   cout<<"   Options Please ---->>>  ";  }






void sortname()
{
 system("cls");
 int i,j;
 struct employee temp[max];
 for(i=0;i<=num-1;i++)
 {
  sortemp1[i]=emp[i];
 }
 for(i=0;i<=num-1;i++)
  {
   for(j=0;j<=num-1;j++)
   {
    if(strcmp(sortemp1[i].name,sortemp1[j].name)<=0)
    {
     temp[i]=sortemp1[i];
     sortemp1[i]=sortemp1[j];
     sortemp1[j]=temp[i];
    }
   }
 }


 for( i=0;i<=num-1;i++)
   {


    cout<<"     Name     Code     Designation     Years(EXP)     Age ";
 cout<<"     ------------------------------------------------------                                  ";
 for( i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<sortemp1[i].name;
  cout<<setw(6)<<sortemp1[i].code;
  cout<<setw(15)<<sortemp1[i].designation;
  cout<<setw(10)<<sortemp1[i].exp;
  cout<<setw(15)<<sortemp1[i].age;
  cout<<endl;
 }
  cout<<"Press Any Key To Go Back";
 getch();


} }


void sortcode()
{
 system("cls");
 int i,j;
 struct employee temp[max];
 for(i=0;i<=num-1;i++)
 {
  sortemp1[i]=emp[i];
 }
 for(i=0;i<=num-1;i++)
  {
   for(j=0;j<=num-1;j++)
   {
    if(sortemp1[i].code<sortemp1[j].code)
    {
     temp[i]=sortemp1[i];
     sortemp1[i]=sortemp1[j];
     sortemp1[j]=temp[i];
    }
   }
 }


 for( i=0;i<=num-1;i++)
   {


    cout<<"     Name     Code     Designation     Years(EXP)     Age ";
 cout<<"     ------------------------------------------------------                                  ";
 for( i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<sortemp1[i].name;
  cout<<setw(6)<<sortemp1[i].code;
  cout<<setw(15)<<sortemp1[i].designation;
  cout<<setw(10)<<sortemp1[i].exp;
  cout<<setw(15)<<sortemp1[i].age;
  cout<<endl;
 }
  cout<<"Press Any Key To Go Back";
 getch();


} }




void sortdes()
{
 system("cls");
 int i,j;
 struct employee temp[max];
 for(i=0;i<=num-1;i++)
 {
  sortemp1[i]=emp[i];
 }
 for(i=0;i<=num-1;i++)
  {
   for(j=0;j<=num-1;j++)
   {
    if(strcmp(sortemp1[i].designation,sortemp1[j].designation)<=0)
    {
     temp[i]=sortemp1[i];
     sortemp1[i]=sortemp1[j];
     sortemp1[j]=temp[i];
    }
   }
 }


 for( i=0;i<=num-1;i++)
   {


    cout<<"     Name     Code     Designation     Years(EXP)     Age";
 cout<<"     ------------------------------------------------------                                 ";
 for( i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<sortemp1[i].name;
  cout<<setw(6)<<sortemp1[i].code;
  cout<<setw(15)<<sortemp1[i].designation;
  cout<<setw(10)<<sortemp1[i].exp;
  cout<<setw(15)<<sortemp1[i].age;
  cout<<endl;
 }
  cout<<"Press Any Key To Go Back";
 getch();


} }


void sortage()
{
 system("cls");
 int i,j;
 struct employee temp[max];
 for(i=0;i<=num-1;i++)
 {
  sortemp1[i]=emp[i];
 }
 for(i=0;i<=num-1;i++)
  {
   for(j=0;j<=num-1;j++)
   {
    if(sortemp1[i].age<sortemp1[j].age)
    {
     temp[i]=sortemp1[i];
     sortemp1[i]=sortemp1[j];
     sortemp1[j]=temp[i];
    }
   }
 }


 for( i=0;i<=num-1;i++)
   {


    cout<<"     Name     Code     Designation     Years(EXP)     Age";
 cout<<"     ------------------------------------------------------                                 ";
 for( i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<sortemp1[i].name;
  cout<<setw(6)<<sortemp1[i].code;
  cout<<setw(15)<<sortemp1[i].designation;
  cout<<setw(10)<<sortemp1[i].exp;
  cout<<setw(15)<<sortemp1[i].age;
  cout<<endl;
 }
  cout<<"Press Any Key To Go Back";
 getch();


} }




void sortexp()
{
 system("cls");
 int i,j;
 struct employee temp[max];
 for(i=0;i<=num-1;i++)
 {
  sortemp1[i]=emp[i];
 }
 for(i=0;i<=num-1;i++)
  {
   for(j=0;j<=num-1;j++)
   {
    if(sortemp1[i].exp<sortemp1[j].exp)
    {
     temp[i]=sortemp1[i];
     sortemp1[i]=sortemp1[j];
     sortemp1[j]=temp[i];
    }
   }
 }


 for( i=0;i<=num-1;i++)
   {


    cout<<"     Name     Code     Designation     Years(EXP)     Age ";
 cout<<"  ------------------------------------------------------ ";
 for( i=0;i<=num-1;i++)
 {
  cout<<setw(13)<<sortemp1[i].name;
  cout<<setw(6)<<sortemp1[i].code;
  cout<<setw(15)<<sortemp1[i].designation;
  cout<<setw(10)<<sortemp1[i].exp;
  cout<<setw(15)<<sortemp1[i].age;
  cout<<endl;
 }
  cout<<"Press Any Key To Go Back";
 getch();


} }

Bus Reservation System In C++

#include <conio.h>
#include <cstdio>
#include <iostream>
#include <string.h>
#include <cstdlib>
using namespace std;
static int p = 0;
class a
{
  char busn[5], driver[10], arrival[5], depart[5], from[10], to[10], seat[8][4][10];
public:
  void install();
  void allotment();
  void empty();
  void show();
  void avail();
  void position(int i);
}
bus[10];
void vline(char ch)
{
  for (int i=80;i>0;i--)
  cout<<ch;
}
void a::install()
{
  cout<<"Enter bus no: ";
  cin>>bus[p].busn;
  cout<<"\nEnter Driver's name: ";
  cin>>bus[p].driver;
  cout<<"\nArrival time: ";
  cin>>bus[p].arrival;
  cout<<"\nDeparture: ";
  cin>>bus[p].depart;
  cout<<"\nFrom: \t\t\t";
  cin>>bus[p].from;
  cout<<"\nTo: \t\t\t";
  cin>>bus[p].to;
  bus[p].empty();
  p++;
}
void a::allotment()
{
  int seat;
  char number[5];
  top:
  cout<<"Bus no: ";
  cin>>number;
  int n;
  for(n=0;n<=p;n++)
  {
    if(strcmp(bus[n].busn, number)==0)
    break;
  }
  while(n<=p)
  {
    cout<<"\nSeat Number: ";
    cin>>seat;
    if(seat>32)
    {
      cout<<"\nThere are only 32 seats available in this bus.";
    }
    else
    {
    if (strcmp(bus[n].seat[seat/4][(seat%4)-1], "Empty")==0)
      {
        cout<<"Enter passanger's name: ";
        cin>>bus[n].seat[seat/4][(seat%4)-1];
        break;
      }
    else
      cout<<"The seat no. is already reserved.\n";
      }
      }
    if(n>p)
    {
      cout<<"Enter correct bus no.\n";
      goto top;
    }
  }


void a::empty()
{
  for(int i=0; i<8;i++)
  {
    for(int j=0;j<4;j++)
    {
      strcpy(bus[p].seat[i][j], "Empty");
    }
  }
}
void a::show()
{
  int n;
  char number[5];
  cout<<"Enter bus no: ";
  cin>>number;
  for(n=0;n<=p;n++)
  {
    if(strcmp(bus[n].busn, number)==0)
    break;
  }
while(n<=p)
{
  vline('*');
  cout<<"Bus no: \t"<<bus[n].busn
  <<"\nDriver: \t"<<bus[n].driver<<"\t\tArrival time: \t"
  <<bus[n].arrival<<"\tDeparture time:"<<bus[n].depart
  <<"\nFrom: \t\t"<<bus[n].from<<"\t\tTo: \t\t"<<
  bus[n].to<<"\n";
  vline('*');
  bus[0].position(n);
  int a=1;
  for (int i=0; i<8; i++)
  {
    for(int j=0;j<4;j++)
    {
      a++;
      if(strcmp(bus[n].seat[i][j],"Empty")!=0)
      cout<<"\nThe seat no "<<(a-1)<<" is reserved for "<<bus[n].seat[i][j]<<".";
    }
  }
  break;
  }
  if(n>p)
    cout<<"Enter correct bus no: ";
}
void a::position(int l)
{
  int s=0;p=0;
  for (int i =0; i<8;i++)
  {
    cout<<"\n";
    for (int j = 0;j<4; j++)
    {
      s++;
      if(strcmp(bus[l].seat[i][j], "Empty")==0)
        {
          cout.width(5);
          cout.fill(' ');
          cout<<s<<".";
          cout.width(10);
          cout.fill(' ');
          cout<<bus[l].seat[i][j];
          p++;
        }
        else
        {
        cout.width(5);
        cout.fill(' ');
        cout<<s<<".";
        cout.width(10);
        cout.fill(' ');
        cout<<bus[l].seat[i][j];
        }
      }
    }
  cout<<"\n\nThere are "<<p<<" seats empty in Bus No: "<<bus[l].busn;
  }
void a::avail()
{


  for(int n=0;n<p;n++)
  {
    vline('*');
    cout<<"Bus no: \t"<<bus[n].busn<<"\nDriver: \t"<<bus[n].driver
    <<"\t\tArrival time: \t"<<bus[n].arrival<<"\tDeparture Time: \t"
    <<bus[n].depart<<"\nFrom: \t\t"<<bus[n].from<<"\t\tTo: \t\t\t"
    <<bus[n].to<<"\n";
    vline('*');
    vline('_');
  }
}
int main()
{
system("cls");
int w;
while(1)
{
    //system("cls");
  cout<<"\n\n\n\n\n";
  cout<<"\t\t\t1.Install\n\t\t\t"
  <<"2.Reservation\n\t\t\t"
  <<"3.Show\n\t\t\t"
  <<"4.Buses Available. \n\t\t\t"
  <<"5.Exit";
  cout<<"\n\t\t\tEnter your choice:-> ";
  cin>>w;
  switch(w)
  {
    case 1:  bus[p].install();
      break;
    case 2:  bus[p].allotment();
      break;
    case 3:  bus[0].show();
      break;
    case 4:  bus[0].avail();
      break;
    case 5:  exit(0);
  }
}
return 0;
}