CS Practical File
CS Practical File
CS Practical File
o
o
o
o
getData() : accepts roll number, name and marks in 5 subjects. Invokes the functions calAvg() to store
average marks in avgmark and calGrade() to store grade.
putData() : to display roll number, name, average mark and grade.
#include<iostream.h>
#include<conio.h>
class student
{
private:
int rollNo;
char name[20];
float mark[5];
float avgmark;
char grade;
void calAvg()
{
float tot;
for(int i = 0; i < 5; i++)
{
tot += mark[i];
}
avgmark = tot/5;
}
char calGrade()
{
if(avgmark >= 75)
grade = 'A';
else if(avgmark >= 50 && avgmark < 75)
grade = 'B';
else
grade = 'C';
return grade;
}
public:
void getData()
{
cout << "Enter roll number: ";
cin >> rollNo;
cout << "Enter name: ";
cin >> name;
cout << "Enter 5 marks: ";
for(int i = 0; i < 5; i++)
{
cin >> mark[i];
}
calAvg();
calGrade();
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Average marks: " << avgmark << endl;
cout << "Grade: " << grade << endl;
}
int getRollNo()
{return rollNo; }
int getGrade()
{return grade; }
int getAvgmark()
{return avgmark; }
};
void main()
{
clrscr();
student derps[10];
cout << "Enter details for 10 students: " << endl;
for(int i = 0; i < 10; i++)
derps[i].getData();
int
int
int
int
nofA = 0;
nofB = 0;
nofC = 0;
highInd = 0;
<<
<<
<<
<<
cout << "The records for highest-scoring student is: " << endl;
derps[highInd].putData();
int num;
cout << "Enter roll number: " << endl;
cin >> num;
int flag = 0;
for(int k = 0; k < 10; k++)
{
if(derps[k].getRollNo() == num)
{
derps[k].putData();
flag = 1;
break;
}
}
if(flag == 0)
cout << "Student with entered roll number not found. " << endl;
getch();
}
to input the values for the data members PlayCode and PlayTitle.
More_Data()
to assign the values of Duration and No_Scenes with the help of corresponding values
passed as parameter to this function.
Show_Data()
#include<iostream.h>
#include<conio.h>
class Play
{
long int playCode;
char playTitle[20];
int duration;
int no_scenes;
public:
Play()
{
duration = 30;
no_scenes = 5;
}
void new_data()
{
cout << "Enter playCode: " << endl;
cin >> playCode;
cout << "Enter playTitle: " << endl;
cin >> playTitle;
}
void more_data(int dur, int nos)
{
duration = dur;
no_scenes = nos;
}
void show_data()
{
cout << "playCode: " << playCode << endl;
cout << "playTitle: " << playTitle << endl;
cout << "Duration: " << duration << endl;
cout << "Number of scenes: " << no_scenes << endl;
}
};
void main()
{
clrscr();
Play playList[5];
for(int i = 0; i < 5; i++)
{
char ch;
int dur, nos;
playList[i].new_data();
cout << "Would you like to enter more data? Answer y/n" << endl;
cin >> ch;
if(ch == 'y')
{
cout << "Enter duration: "; cin >> dur;
cout << "Number of scenes: "; cin >> nos;
playList[i].more_data(dur, nos);
}
}
for(int j = 0; j < 5; j++)
playList[j].show_data();
getch();
}
O
O
#include<iostream.h>
#include<conio.h>
class Tour
{
char TCode[20];
int noOfAdults;
int noOfKids;
int kilometer;
int totalFare;
public:
Tour()
{
for(int i = 0; i < 20; i++)
TCode[i] = '\0';
noOfAdults = 0;
noOfKids = 0;
kilometer = 0;
totalFare = 0;
}
void assignFare()
{
int fare;
if(kilometer < 500)
fare = 100;
else(kilometer >= 500 && kilometer < 750)
fare = 150;
else
fare = 200;
totalFare = noOfAdults*fare + noOfKids*0.5*fare;
}
void enterTour()
{
cout << "Enter TCode: ";
cin >> TCode;
cout << "Enter number of adults: ";
cin >> noOfAdults;
cout << "Enter number of kids: ";
cin >> noOfKids;
cout << "Enter distance: ";
cin >> kilometer;
assignFare();
}
void displayTour()
{
cout << "TCode: " << TCode << endl;
cout << "Number of adults: " << noOfAdults << endl;
cout << "Number of kids: " << noOfKids << endl;
cout << "Distance: " << kilometer << endl;
cout << "Total fare: " << totalFare;
}
}
Polymorphism
P1. Declare overloaded functions Large to find the largest element.
a. Large (int n) : Returns the number itself.
b. Large (int a,int b) : Returns the largest among two numbers a and b.
c. Large(int A[ ]) : Returns the largest value stored in the array A
#include<iostream.h>
int large(int n)
{
return n;
}
int large(int a, int b)
{
if(a > b)
return a;
return b;
}
int large(int A[])
{
int i = 0;
int gr = 0;
while(A[i] != '\0')
{
if(A[i] > gr)
gr = A[i];
i++
}
return gr;
}
P2. Declare a class complex, which has two data members real and imaginary. Write overloaded functions Multiply for the
following cases:
a. Multiply(complex a, complex b) to multiply two complex numbers a and b and return a complex number
b. Multiply(complex a, int k) - to multiply the scalar k to the complex number a and return a complex number
c. Multiply(int k , complex a) - to multiply the scalar k to the complex number a and return a complex number
d. Multiply (int a, int b) to multiply two integers and return an integer.
#include<iostream.h>
#include<conio.h>
class Complex
{
int real;
int imag;
public:
Complex(int a, int b)
{real = a; imag = b;}
int getReal()
{return real;}
int getImag()
{return imag;}
}
Complex multiply(Complex a, Complex b)
{
c = a.getReal(); d = a.getImag();
e = b.getReal(); f = b.getImag();
real = c*e - d*f;
imag = c*f + d*e;
res = Complex(real, imag);
return res;
}
Complex multiply(Complex a, int k)
{
real = a.getReal()*k;
imag = a.getImag()*k;
res = Complex(real, imag);
return res;
}
Complex multiply(int k, Complex a)
{
real = a.getReal()*k;
imag = a.getImag()*k;
res = Complex(real, imag);
return res;
}
multiply(int a, int b)
{
return a*b; }
Inheritance
I1. Enter data and display information about employees and manager. Employee is the base class (Data members : employee
number, Name, member functions getdata(), putdata() ), Manager is the derived class (Data members : Department and salary,
member functions indata(), outdata()). Implement the inheritance for 5 objects.
#include<iostream.h>
#include<conio.h>
class Employee
{
int empNo;
char name[20];
public:
void getData()
{
cout << "Enter employee number: "; cin >> empNo;
cout << "Enter name: "; cin >> name;
}
void putData()
{
cout << "Employee number: " << empNo << endl;
cout << "Name: " << name << endl;
}
};
class Manager : public Employee
{
char dept[20];
int salary;
public:
void inData()
{
cout << "Enter department: "; cin >> dept;
cout << "Enter salary: "; cin >> salary;
}
void outData()
{
cout << "Department: " << dept << endl;
cout << "Salary: " << salary << endl;
}
};
void main()
{
clrscr();
Manager empList[5];
for(int i = 0; i < 5; i++)
{
char ch;
cout << "Is this a manager? Answer y/n" << endl;
cin >> ch;
if(ch == 'y')
{
empList[i].getData();
empList[i].inData();
}
else
empList[i].getData();
}
for(int j = 0; j < 5; j++)
{
empList[j].putData();
empList[j].outData();
}
getch();
}
Data Structure
D1. Create a one-dimensional array; sort the array in ascending order using Insertion Sort. Display the unsorted and sorted arrays.
#include<iostream.h>
#include<limits.h>
#include<conio.h>
void inputArr(int n, int arr[])
{
for(int i = 1; i <= n; i++)
cin >> arr[i];
}
void dispArr(int n, int arr[])
{
for(int i = 1; i <= n; i++)
cout << arr[i] << ' ';
cout << endl;
}
int insSort(int n, int arr[])
{
int tmp, j;
arr[0] = INT_MIN;
for(int i = 1; i <= n; i++)
{
tmp = arr[i];
j = i-1;
while(tmp < arr[j])
{
arr[j+1] = arr[j];
j--;
}
arr[j+1] = tmp;
}
}
void main()
{
clrscr();
int arr[100];
int n;
cout << "Enter number of elements: ";
cin >> n;
inputArr(n, arr);
insSort(n, arr);
dispArr(n, arr);
getch();
}
D2. Create a one-dimensional array; sort the array in ascending order using Bubble Sort and search for an element using Binary
Search. Delete the element if found, otherwise display appropriate error message.
#include<iostream.h>
#include<limits.h>
#include<conio.h>
int N;
void inputArr(int n, int arr[])
{
for(int i = 0; i < n; i++)
cin >> arr[i];
}
void dispArr(int n, int arr[])
{
for(int i = 0; i < n; i++)
cout << arr[i] << ' ';
cout << endl;
}
void bubbleAsc(int n, int arr[])
{
int tmp;
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n-1; j++)
{
if(arr[j] > arr[j+1])
{
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
}
int binSearch(int n, int num, int arr[])
{
int beg, last, mid;
beg = 0; last = n-1;
while(beg <= last)
{
mid = (beg+last)/2;
if(num == arr[mid])
return mid;
else if(num > arr[mid])
beg = mid+1;
else
last = mid-1;
}
return -1;
}
void deleteElem(int ind, int n, int arr[])
{
for(int i = ind; i < n; i++)
{
arr[i] = arr[i+1];
}
N--;
}
void main()
{
clrscr();
int arr[100];
int num;
cout << "Enter number of elements: ";
cin >> N;
inputArr(N, arr);
bubbleAsc(N, arr);
cout << "Enter element to be deleted: ";
cin >> num;
int ind = binSearch(N, num, arr);
if(ind == -1)
cout << "Element not found" << endl;
else
{
deleteElem(ind, N, arr);
dispArr(N, arr);
}
getch();
}
#include<iostream.h>
#include<conio.h>
void inputArr(int n, int arr[])
{
for(int i = 0; i < n; i++)
cin >> arr[i];
}
void dispArr(int n, int arr[])
{
for(int i = 0; i < n; i++)
cout << arr[i] << ' ';
cout << endl;
}
void selSort(int n, int arr[])
{
int small, pos, tmp;
for(int i = 0; i < n-1; i++)
{
small = arr[i];
pos = i;
for(int j = i+1; j < n; j++)
{
if(arr[j] < small)
{
small = arr[j]; pos = j;
}
}
tmp = arr[i];
arr[i] = arr[pos];
arr[pos] = tmp;
}
}
void merge(int m, int A[], int n, int B[], int C[])
{
int a = 0, b = 0, c = 0;
while(a < m && b < n)
{
if(A[a] < B[b])
{
C[c] = A[a];
a++;
}
else
{
C[c] = B[b];
b++;
}
c++;
}
while(a < m)
{
C[c] = A[a];
c++; a++;
}
while(b < n)
{
C[c] = B[b];
c++; b++;
}
}
void main()
{
clrscr();
int A[100], B[100], C[200];
int m, n;
cout << "Enter number of elements in array 1 and array 2: ";
cin >> m >> n;
cout << "Enter array 1: " << endl;
inputArr(m, A);
cout << "Enter array 2: " << endl;
inputArr(n, B);
selSort(m, A);
selSort(n, B);
merge(m, A, n, B, C);
cout << "Array 1: " << endl;
dispArr(m, A);
cout << "Array 2: " << endl;
dispArr(n, B);
cout << "Merged array: " << endl;
dispArr(m+n, C);
getch();
}
D4. Declare a 2-dim array and write code for the following functions: Implement using main function.
a. InputArray (int A,int row,int col) to enter the data into an array A of given size
b. DisplayArray (int A,int row,int col) to display the array elements
c. SumRow (int A,int row,int col) to display the sum of elements of each row
d. SumCol (int A,int Col,int col) to display the sum of elements of each Column
e. SumDiag (int A,int Col,int col) to display the sum of diagonal elements , if number of rows is equal to number of
rows, display appropriate message otherwise.
#include<iostream.h>
#include<conio.h>
void inputArray(int A[][3], int row, int col)
{
for(int i = 0; i < row; i++)
{
for(int j = 0; j < col; j++)
{
cin >> A[i][j];
}
cout << endl;
}
}
void displayArray(int A[][3], int row, int col)
{
for(int i = 0; i < row; i++)
{
for(int j = 0; j < col; j++)
{
cout << A[i][j];
cout << " ";
}
cout << endl;
}
}
void sumRow(int
{
for(int i =
{
int sum
for(int
{
sum
}
cout <<
}
}
void sumCol(int
{
for(int j =
{
int sum
for(int
{
sum
}
cout <<
}
}
}
}
void main()
{
clrscr();
int arr[3][3];
inputArray(arr, 3, 3);
displayArray(arr, 3, 3);
sumRow(arr, 3, 3);
sumCol(arr, 3, 3);
sumDiag(arr, 3, 3);
getch();
}
D5. Declare a 2-dim array and write code for the following functions: Implement using main function.
a. InputArray (int A,int row,int col) to enter the data into an array A of given size
b. DisplayArray (int A,int row,int col) to display the array elements
c. DispTopTriangle (int A,int row,int col) to display the array elements present above the major diagonal
d. DispBottomTriangle (int A,int row,int col) to display the array elements present below the major diagonal
#include<iostream.h>
#include<conio.h>
class student
{
int rollNo;
char name[20];
float fee;
public:
void getData()
{
cout << "Enter roll number: " << endl; cin >> rollNo;
cout << "Enter name: " << endl; cin >> name;
cout << "Enter fee: " << endl; cin >> fee;
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Fee: " << fee << endl;
}
};
struct node
{
class data;
node *next;
};
node *top = NULL;
node *createNode(student wut)
{
node *ptr = new node;
ptr -> data = wut;
pt -> next = NULL;
return ptr;
}
void push(student wut)
{
node *temp;
temp = new node;
temp -> data.getData();
temp -> next = top;
top = temp;
}
void pop()
{
if(top!=NULL)
{
node *temp = top;
top = top -> next;
delete temp;
}
else
cout << "Underflow! " << endl;
}
void display()
{
if(top == NULL)
cout << "Nothing to see here, move on." << endl;
else
{
node *ptr = top;
while(ptr != NULL)
{
ptr -> data.getData();
cout << "-->" << endl;
ptr = ptr -> next;
}
cout << "Finito. " << endl;
}
}
void main()
{
clrscr();
char inpt = 'b';
while(inpt != 'x')
{
cout << "Enter: " << endl;
cout << "a to push" << endl;
cout << "b to pop" << endl;
cout << "x to exit" << endl;
cout << "Enter your option: " << endl;
cin >> inpt;
if(inpt == 'a')
{
student stud;
stud.getData();
push(stud);
}
else if(inpt = 'b')
pop();
else
cout << "kthnxbye" << endl;
cout << "Your stack is now: " << endl;
display();
}
getch();
}
#include<iostream.h>
#include<conio.h>
struct date
{
int dd, mm, yy;
};
class student
{
private:
int rollNo;
char name[20];
date dob;
public:
void getData()
{
cout << "Enter roll number: ";
cin >> rollNo;
cout << "Enter name: ";
cin >> name;
cout << "Enter date of birth in dd-mm-yy format: ";
cin >> dob.dd >> dob.mm >> dob.yy;
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Date of birth: " << dob.dd << "-" << dob.mm << "-" << dob.yy << endl;
}
int getMonth()
{return dob.mm;}
};
struct node
{
student data;
node *next;
};
node *front = NULL;
node *rear = NULL;
node *createNode(student wat)
{
node *ptr = new node;
ptr -> data = wat;
ptr -> next = NULL;
return ptr;
}
void addNode(student wat)
{
node *freshNode = createNode(wat);
if(rear == NULL)
{
front = freshNode;
rear = freshNode;
}
else
{
rear -> next = freshNode;
freshNode -> next = NULL;
rear = freshNode;
}
}
void delNode()
{
if(front == NULL)
cout << "Underflow! " << endl;
else
{
#include<iostream.h>
#include<conio.h>
int top = -1;
void push(int n, int arr[])
{
int num;
cout << "Enter number to be pushed: ";
cin >> num;
if(top < n)
{
arr[top+1] = num;
top++;
}
else
cout << "Overflow! " << endl;
}
void pop(int arr[])
{
if(top > -1)
{
arr[top] = '\0';
top--;
}
else
cout << "Underflow! " << endl;
}
void display(int arr[])
{
cout << "Elements in stack are: " << endl;
for(int i = 0; i <= top; i++)
{
cout << arr[i] << ' ';
}
cout << endl;
}
void main()
{
int n;
int arr[100];
cout << "Enter number of elements in stack: ";
cin >> n;
char inpt = 'm';
while(inpt != 'x')
{
cout << "Enter: " << endl;
cout << "a to push" << endl;
cout << "b to pop" << endl;
cout << "x to exit" << endl;
cout << "Enter your option: " << endl;
cin >> inpt;
if(inpt == 'a')
{
push(n, arr);
}
else if(inpt = 'b')
pop(arr);
else
cout << "kthnxbye" << endl;
cout << "Your stack is now: " << endl;
display(arr);
}
getch();
}
#include<iostream.h>
#include<conio.h>
int front = 0;
int back = 0;
void add(int n, int arr[])
{
int num;
cout << "Enter number to be added: ";
cin >> num;
if(back < n)
{
arr[back] = num;
back++;
}
else
cout << "Overflow! " << endl;
}
void del(int arr[])
{
if(back - front > 0)
{
arr[front] = '\0';
front++;
}
else
cout << "Underflow! " << endl;
}
void display(int arr[])
{
cout << "Elements in stack are: " << endl;
for(int i = front; i < back; i++)
{
cout << arr[i] << ' ';
}
cout << endl;
}
void main()
{
int n;
int arr[100];
cout << "Enter number of elements in queue: ";
cin >> n;
char inpt = 'm';
while(inpt != 'x')
{
cout << "Enter: " << endl;
cout << "a to add" << endl;
cout << "d to delete" << endl;
cout << "x to exit" << endl;
cout << "Enter your option: " << endl;
cin >> inpt;
if(inpt == 'a')
{
add(n, arr);
}
else if(inpt == 'd')
del(arr);
else
cout << "kthnxbye" << endl;
cout << "Your queue is now: " << endl;
display(arr);
}
getch();
}
#include<iostream.h>
#include<conio.h>
int n;
int front = -1, rear = -1;
void add(int arr[])
{
int num;
cout << "Enter number to be added: ";
cin >> num;
if(front == (rear + 1)%n)
{
cout << "Overflow! ";
}
else
{
if(front == -1)
front = rear = 0;
else
rear = (rear + 1)%n;
arr[rear] = num;
}
}
void del(int arr[])
{
int a;
if(front == -1)
cout << "Underflow! " << endl;
else
{
a = arr[front];
if(front == rear)
front = rear = -1;
else
front = (front + 1)%n;
}
}
void display(int arr[])
{
int i;
if(front == -1)
{
cout << "Underflow! " << endl;
}
else
{
cout << endl;
cout << "Front --> " << front << endl;
cout << "Rear --> " << rear << endl;
cout << "The Circular Queue elements are: " << endl;
for(i = 0; i <= rear - front; i++)
cout << arr[front+i] << endl;
}
}
int main()
{
int arr[100];
cout << "Enter number of elements in circular queue: ";
cin >> n;
char inpt = 'm';
while(inpt != 'x')
{
cout << "Enter: " << endl;
cout << "a to add" << endl;
cout << "d to delete" << endl;
cout << "x to exit" << endl;
cout << "Enter your option: " << endl;
cin >> inpt;
if(inpt == 'a')
{
add(arr);
}
else if(inpt == 'd')
del(arr);
else
cout << "kthnxbye" << endl;
cout << "Your queue is now: " << endl;
display(arr);
}
getch();
}
#include<iostream.h>
#include<fstream.h>
#include<conio.h>
class student
{
private:
int rollNo;
char name[20];
float mark[5];
float avgmark;
char grade;
void calAvg()
{
float tot;
for(int i = 0; i < 5; i++)
{
tot += mark[i];
}
avgmark = tot/5;
}
char calGrade()
{
if(avgmark >= 75)
grade = 'A';
else if(avgmark >= 50 && avgmark < 75)
grade = 'B';
else
grade = 'C';
return grade;
}
public:
void getData()
{
cout << "Enter roll number: ";
cin >> rollNo;
cout << "Enter name: ";
cin >> name;
cout << "Enter 5 marks: ";
for(int i = 0; i < 5; i++)
{
cin >> mark[i];
}
calAvg();
calGrade();
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Average marks: " << avgmark << endl;
cout << "Grade: " << grade << endl;
}
};
void main()
{
student derps[100];
int n;
cout << "Enter number of students: ";
cin >> n;
fstream file;
file.open("student.dat", ios::in | ios::out);
cout << "Enter details for " << n << " students: " << endl;
for(int i = 0; i < n; i++)
{
derps[i].getData();
file.write((char *)&derps[i], sizeof(derps[i]));
}
file.seekg(0);
cout << "The records in student.dat are as follows: " << endl;
for(int j = 0; j < n; j++)
{
file.read((char *)&derps[j], sizeof(derps[j]));
derps[j].putData();
}
file.close();
getch();
}
Write the objects of the class into a binary file called Result.dat
Display number of students in each grade.
Display the data of the students securing highest and the lowest average marks.
#include<iostream.h>
#include<fstream.h>
#include<conio.h>
class student
{
private:
int rollNo;
char name[20];
float avgmark;
char grade;
void calGrade()
{
if(avgmark >= 75)
grade = 'A';
else if(avgmark >= 50 && avgmark < 75)
grade = 'B';
else
grade = 'C';
}
public:
void getData()
{
cout << "Enter roll number: ";
cin >> rollNo;
cout << "Enter name: ";
cin >> name;
cout << "Enter average marks: ";
cin >> avgmark;
calGrade();
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Average marks: " << avgmark << endl;
cout << "Grade: " << grade << endl;
}
float getAvgmark()
{
return avgmark;
}
char getGrade()
{
return grade;
}
};
void main()
{
student derps[100];
int n;
cout << "Enter number of students: ";
cin >> n;
fstream file;
file.open("result.dat", ios::in | ios::out);
cout << "Enter details for " << n << " students: " << endl;
for(int i = 0; i < n; i++)
{
derps[i].getData();
file.write((char *)&derps[i], sizeof(derps[i]));
}
int
int
int
int
int
nofA = 0;
nofB = 0;
nofC = 0;
lowInd = 0;
highInd = 0;
<<
<<
<<
<<
file.seekg(0);
cout << "The records for highest-scoring student is: " << endl;
file.read((char *)&derps[highInd], sizeof(derps[highInd]));
derps[highInd].putData();
file.seekg(0);
cout << "The records for lowest-scoring student is: " << endl;
file.read((char *)&derps[lowInd], sizeof(derps[lowInd]));
derps[lowInd].putData();
file.close();
getch();
}
o
o
#include<iostream.h>
#include<fstream.h>
#include<conio.h>
struct date
{
int dd, mm, yy;
};
class student
{
private:
int rollNo;
char name[20];
date dob;
public:
void monthName(int month)
{
switch (month)
{
case 1 : cout << "Jan";
case 2 : cout << "Feb";
case 3 : cout << "Mar";
case 4 : cout << "Apr";
case 5 : cout << "May";
case 6 : cout << "Jun";
case 7 : cout << "Jul";
case 8 : cout << "Aug";
case 9 : cout << "Sep";
case 10: cout << "Oct";
case 11: cout << "Nov";
case 12: cout << "Dec";
}
}
break;
break;
break;
break;
break;
break;
break;
break;
break;
break;
break;
break;
void getData()
{
cout << "Enter roll number: ";
cin >> rollNo;
cout << "Enter name: ";
cin >> name;
cout << "Enter date of birth in dd-mm-yy format: ";
cin >> dob.dd >> dob.mm >> dob.yy;
}
void putData()
{
cout << "Roll number: " << rollNo << endl;
cout << "Name: " << name << endl;
cout << "Date of birth: " << dob.dd << "-";
MonthName(dob.mm)
cout << "-" << dob.yy << endl;
}
int getMonth()
{
return dob.mm;
}
}s1;
fstream file;
ifstream fio;
void monthOut()
{
fio.open("information.dat", ios::in);
int monthNum;
cout << "Enter a month of birth: " << endl;
cin >> monthNum;
int found = 0;
while(!fio.eof())
{
fio.read((char *)&s1, sizeof(s1));
if(s1.getMonth() == monthNum)
{
s1.putData();
found = 1;
}
}
if(found == 0)
cout << "No records with entered month of birth! " << endl;
fio.close();
}
void main()
{
student derps[100];
int n;
cout << "Enter number of students: ";
cin >> n;
file.open("information.dat", ios::in | ios::out);
cout << "Enter details for " << n << " students: " << endl;
for(int i = 0; i < n; i++)
{
derps[i].getData();
file.write((char *)&derps[i], sizeof(derps[i]));
}
file.seekg(0);
cout << "The records in information.dat are as follows: " << endl;
for(int j = 0; j < n; j++)
{
file.read((char *)&derps[j], sizeof(derps[j]));
derps[j].putData();
}
file.close();
monthOut();
getch();
}
o
o
o
#include<fstream.h>
#include<string.h>
#include<conio.h>
fstream file;
ifstream fio;
char globDept[10];
class emp
{
private:
int empNo;
char empName[20];
char dept[10];
int salary;
public:
void getData()
{
cout << "Enter employee number: ";
cin >> empNo;
cout << "Enter employee name: ";
cin >> empName;
cout << "Enter department: ";
cin >> dept;
cout << "Enter salary: ";
cin >> salary;
}
void putData()
{
cout << "Employee number: " << empNo << endl;
cout << "Name: " << empName << endl;
cout << "Department: " << dept << endl;
cout << "Salary: " << salary << endl;
}
void getDept()
{
strcpy(dept, globDept);
}
}e1;
void descrOut()
{
fio.open("information.dat", ios::in);
char dept[10];
cout << "Enter a department for more info: " << endl;
cin >> dept;
int found = 0;
while(!fio.eof())
{
fio.read((char *)&e1, sizeof(e1));
e1.getDept();
if(strcmp(globDept, dept) == 0)
{
e1.putData();
found = 1;
}
}
if(found == 0)
cout << "No records with entered department! " << endl;
fio.close();
}
void main()
{
emp derps[100];
int n;
cout << "Enter number of employees: ";
cin >> n;
file.open("employee.dat", ios::in | ios::out);
cout << "Enter details for " << n << " employees: " << endl;
for(int i = 0; i < n; i++)
{
derps[i].getData();
file.write((char *)&derps[i], sizeof(derps[i]));
}
file.seekg(0);
cout << "The records in employee.dat are as follows: " << endl;
for(int j = 0; j < n; j++)
{
file.read((char *)&derps[j], sizeof(derps[j]));
derps[j].putData();
}
int num;
cout << "Enter n for n-th record: " << endl;
cin >> num;
if(num < n)
{
file.seekg(0);
for(int k = 0; k < n; k++)
{
if(k == num-1)
{
file.read((char *)&derps[k], sizeof(derps[k]));
derps[k].putData();
}
}
}
else
cout << "n out of range";
file.close();
getch();
}
o
o
#include<iostream.h>
#include<fstream.h>
#include<string.h>
#include<conio.h>
class emp
{
private:
int empNo;
char empName[20];
int salary;
public:
void getData()
{
cout << "Enter employee number: ";
cin >> empNo;
cout << "Enter employee name: ";
cin >> empName;
cout << "Enter salary: ";
cin >> salary;
}
void putData()
{
cout << "Employee number: " << empNo << endl;
cout << "Name: " << empName << endl;
cout << "Salary: " << salary << endl;
}
int getSalary()
{
return salary;
}
};
void main()
{
fstream file("employee.dat", ios::in | ios::out);
ofstream fio("temp.dat", ios::out);
emp derps[100];
int n;
cout << "Enter number of employees: ";
cin >> n;
cout << "Enter details for " << n << " employees: " << endl;
for(int i = 0; i < n; i++)
{
derps[i].getData();
file.write((char *)&derps[i], sizeof(derps[i]));
}
file.seekg(0);
cout << "The records in employee.dat are as follows: " << endl;
for(int j = 0; j < n; j++)
{
file.read((char *)&derps[j], sizeof(derps[j]));
derps[j].putData();
}
int lowInd = 0;
for(int k = 0; k < n; k++)
{
if(derps[k].getSalary() < derps[lowInd].getSalary())
lowInd = k;
}
cout << "Now deleting record of employee getting least salary... ";
for(int l = 0; l < n; l++)
{
if(l != lowInd)
B6. Sort the file employee.dat in ascending order of salary. Display the original file data and sorted file data.
#include<iostream.h>
#include<fstream.h>
#include<string.h>
#include<conio.h>
class emp
{
private:
int empNo;
char empName[20];
char dept[10];
int salary;
public:
void getData()
{
cout << "Enter employee number: ";
cin >> empNo;
cout << "Enter employee name: ";
cin >> empName;
cout << "Enter department: ";
cin >> dept;
cout << "Enter salary: ";
cin >> salary;
}
void putData()
{
cout << "Employee number: " << empNo << endl;
cout << "Name: " << empName << endl;
cout << "Department: " << dept << endl;
cout << "Salary: " << salary << endl;
}
int getSalary()
{
return salary;
}
}e1;
void sort(int n, int list[])
{
int temp;
for(int i = 0; i < n; i++)
{
for (int j = 0; j < n-1; j++)
{
if (list[j] > list[j+1])
{
temp = list[j];
list[j] = list[j+1];
list[j+1] = temp;
}
}
}
}
void main()
{
clrscr();
ifstream fio;
ofstream file;
emp derps[100];
fio.open("employee.dat", ios::in);
file.open("empSorted.dat", ios::out);
fio.seekg(0);
int nofRec = 0;
int ascList[100];
while(!fio.eof())
{
fio.read((char *)&e1, sizeof(e1));
derps[nofRec] = e1;
ascList[nofRec] = e1.getSalary();
nofRec++;
}
sort(nofRec, ascList);
for(int i = 0; i < nofRec; i++)
{
for(int j = 0; j < nofRec; j++)
{
if(derps[j].getSalary() == ascList[i])
{
file.write((char *)&derps[j], sizeof(derps[j]));
break;
}
}
}
for(int k = 0; k < nofRec; k++) // Displays employee.dat
{
fio.read((char *)&e1, sizeof(e1));
e1.putData();
}
for(int l = 0; l < nofRec; l++) // Display empSorted.dat
{
fio.read((char *)&e1, sizeof(e1));
e1.putData();
}
fio.close();
file.close();
getch();
}
#include<fstream.h>
#include<conio.h>
#include<string.h>
#include<stdio.h>
#include<ctype.h>
void create()
{
char line[80];
ofstream f1("story.txt");
cout << "Enter the text : " << endl << endl;
for(int i = 0; i < 3; i++)
{
gets(line);
f1 << line << endl;
}
f1.close();
}
void display()
{
char line[80];
ifstream f1("story.txt");
cout << endl << endl;
while(f1.getline(line,80))
puts(line);
f1.close();
}
void reverse()
{
char line[80];
ifstream f1("story.txt");
while(f1.getline(line, 80, '\n'))
{
int n = strlen(line);
for(int i = n; i >= 0; i--)
cout << line[i];
cout << endl;
}
f1.close();
}
void frequency()
{
ifstream f1("story.txt");
int freq[26];
for(int i = 0; i < 26; i++)
freq[i] = 0;
int countVow = 0, countCons = 0, countDig = 0;
int let_upper = 0, let_lower = 0;
while(1)
{
char letter = f1.get();
if (isdigit(letter))
countDig++;
if ( letter == 'a' ||
letter == 'e'
letter == 'i'
letter == 'o'
letter == 'u'
countVow++;
else
countCons++;
letter ==
|| letter
|| letter
|| letter
|| letter
'A' ||
== 'E'
== 'I'
== 'O'
== 'U'
||
||
||
)
if (isupper(letter))
let_upper++;
if (islower(letter))
let_lower++;
if isupper(letter)
letter = tolower(letter);
int alphabet_no = int(letter)-97;
freq[alphabet_no]++;
if (f1.eof())
break;
}
f1.close();
cout
cout
cout
cout
cout
<<
<<
<<
<<
<<
"No.
"No.
"No.
"No.
"No.
of
of
of
of
of
getch();
clrscr();
for(i = 0; i < 26; i++)
{
cout << "Frequency of " << char(i + 97) << " is : ";
cout << freq[i] << endl;
}
}
void CountWord(char word[])
{
int count = 0;
char c[80];
ifstream f1("story.txt");
while (f1 >> c)
{
if(strcmp(c, word) == 0)
count++;
}
cout << "Word { " << word << " } appears " << count << " times" << endl;
f1.close();
}
void main()
{
clrscr();
create();
getch();
clrscr();
display();
getch();
clrscr();
reverse();
getch();
clrscr();
frequency();
getch();
clrscr();
cout<<"Enter word : ";
char word[40];
gets(word);
CountWord(word);
getch();
}