0% found this document useful (0 votes)
41 views10 pages

Dsal 011

The document outlines a program for managing employee information, allowing users to add, delete, and search for employee records using an index sequential file structure. It includes a C++ code implementation that defines an employee structure and provides functions for building the employee table, inserting new entries, deleting records, and searching for specific employees. The program also features a menu-driven interface for user interaction.

Uploaded by

bgmijaan055
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views10 pages

Dsal 011

The document outlines a program for managing employee information, allowing users to add, delete, and search for employee records using an index sequential file structure. It includes a C++ code implementation that defines an employee structure and provides functions for building the employee table, inserting new entries, deleting records, and searching for specific employees. The program also features a menu-driven interface for user interaction.

Uploaded by

bgmijaan055
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Practical No-11

Name:- Mundhe Shrinath Sanjay


Class:- S.E Computer
Batch:- A3
Roll No:- 78

TITLE:-

Company maintains employee information as employee ID, name, designation andsalary.


Allow user to add, delete information of employee. Display information of particular
employee. If employee does not exist an appropriate message is displayed. If
it is, then the system displays the employee details. Use index sequential file to maintain
the data.

CODE:
#include <bits/stdc++.h>

#define max 20
using namespace std;

// Structure of Employee
struct employee {
string name;
long int code;
string designation;
int exp;
int age;
};

int num;
void showMenu();
// Array of Employees to store the
// data in the form of the Structure
// of the Array
employee emp[max], tempemp[max],
sortemp[max], sortemp1[max];

// Function to build the given datatype


void build()
{
cout << "Build The Table\n";
cout << "Maximum Entries can be "
<< max << "\n";

cout << "Enter the number of "


<< "Entries required";
cin >> num;

if (num > 20) {


cout << "Maximum number of "
<< "Entries are 20\n";
num = 20;
}
cout << "Enter the following data:\n";

for (int i = 0; i < num; i++) {


cout << "Name ";
cin >> emp[i].name;

cout << "Employee ID ";


cin >> emp[i].code;

cout << "Designation ";


cin >> emp[i].designation;

cout << "Experience ";


cin >> emp[i].exp;

cout << "Age ";


cin >> emp[i].age;
}

showMenu();
}

// Function to insert the data into


// given data type
void insert()
{
if (num < max) {
int i = num;
num++;

cout << "Enter the information "


<< "of the Employee\n";
cout << "Name ";
cin >> emp[i].name;

cout << "Employee ID ";


cin >> emp[i].code;

cout << "Designation ";


cin >> emp[i].designation;

cout << "Experience ";


cin >> emp[i].exp;

cout << "Age ";


cin >> emp[i].age;
}
else {
cout << "Employee Table Full\n";
}

showMenu();
}

// Function to delete record at index i


void deleteIndex(int i)
{
for (int j = i; j < num - 1; j++) {
emp[j].name = emp[j + 1].name;
emp[j].code = emp[j + 1].code;
emp[j].designation
= emp[j + 1].designation;
emp[j].exp = emp[j + 1].exp;
emp[j].age = emp[j + 1].age;
}
return;
}

// Function to delete record


void deleteRecord()
{
cout << "Enter the Employee ID "
<< "to Delete Record";
int code;

cin >> code;


for (int i = 0; i < num; i++) {
if (emp[i].code == code) {
deleteIndex(i);
num--;
break;
}
}
showMenu();
}

void searchRecord()
{
cout << "Enter the Employee"
<< " ID to Search Record";

int code;
cin >> code;

for (int i = 0; i < num; i++) {

// If the data is found


if (emp[i].code == code) {
cout << "Name "
<< emp[i].name << "\n";

cout << "Employee ID "


<< emp[i].code << "\n";

cout << "Designation "


<< emp[i].designation << "\n";

cout << "Experience "


<< emp[i].exp << "\n";

cout << "Age "


<< emp[i].age << "\n";
break;
}
}

showMenu();
}

// Function to show menu


void showMenu()
{

cout << " "

<< " Management System"


<< " \n\n";

cout << "Available Options:\n\n";


cout << "Build Table (1)\n";
cout << "Insert New Entry (2)\n";
cout << "Delete Entry (3)\n";
cout << "Search a Record (4)\n";
cout << "Exit (5)\n";

int option;
// Input Options
cin >> option;

// Call function on the basis of the


// above option
if (option == 1) {
build();
}
else if (option == 2) {
insert();
}
else if (option == 3) {
deleteRecord();
}
else if (option == 4) {
searchRecord();
}
else if (option == 5) {
return;
}
else {
cout << "Expected Options"
<< " are 1/2/3/4/5";
showMenu();
}
}

// Driver Code
int main()
{

showMenu();
return 0;
}

OUTPUT:
pl@pl-Vostro-3268:~$ g++ -o test dsl11.cpp
pl@pl-Vostro-3268:~$ ./test

Available Options:

Build Table (1)


Insert New Entry (2)
Delete Entry (3)
Search a Record (4)
Exit (5)
1
Build The Table
Maximum Entries can be 20
Enter the number of Entries required4
Enter the following data:
Name aaa
Employee ID 333
Designation 98
Experience 5
Age 40
Name bbb
Employee ID 666
Designation 45
Experience 6
Age 30
Name ccc
Employee ID 444
Designation 56
Experience 7
Age 55
Name ddd
Employee ID 67
Designation 56
Experience 12
Age 65

Available Options:

Build Table (1)


Insert New Entry (2)
Delete Entry (3)
Search a Record (4)
Exit (5)
2
Enter the information of the Employee
Name eee
Employee ID 555
Designation 56
Experience 9
Age 50

Available Options:

Build Table (1)


Insert New Entry (2)
Delete Entry (3)
Search a Record (4)
Exit (5)
3
Enter the Employee ID to Delete Record333
Available Options:

Build Table (1)


Insert New Entry (2)
Delete Entry (3)
Search a Record (4)
Exit (5)
4
Enter the Employee ID to Search Record666
Name bbb
Employee ID 666
Designation 45
Experience 6
Age 30

Available Options:

Build Table (1)


Insert New Entry (2)
Delete Entry (3)
Search a Record (4)
Exit (5)
5
pl@pl-Vostro-3268:~$

You might also like