C++ Sample Code Class 12

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 95

Q1-PROGRAM TO PASS STRUCTURES TO A FUNCTION THROUGH CALL BY

VALUE AND CALL BY REFERENCE.


#include<iostream.h>
#include<stdio.h>
#include<conio.h>
struct emp
{
int empno;
char name[30];
double salary;
};
void reademp(emp &e)
{ cout<<"\n Enter employee no :";cin>>e.empno;
cout<<"\n Enter employee name :";
gets(e.name);
cout<<"\n Entrer employee salary :"; cin>>e.salary;
}
void showemp(emp e)
{
cout<<"\n Employee Details";
cout<<"\n Empno :"<<e.empno;
cout<<"\n Name :"<<e.name;
cout<<"\n Salary :"<<e.salary;
}
void main()
{
clrscr();
emp e1;
reademp(e1);
showemp(e1);
}
OUTPUT:
Q2-PROGRAM TO CONVERT 2 DIGIT OCTAL NUMBER TO BINARY NUMBER
AND PRINT.
#include<iostream.h>
#include<conio.h>
void octobin (int oct)
{
long binn=0;
int A[6];
int d1,d2,q,r;
d1=oct%10;
d2=oct/10;
for (int i=0;i<6;i++)
{
A[i]=0;
}
for (i=0;i<3;i++)
{ q=d1/2;
r=d1%2;
A[i]=r;
d1=q;
}
for (;i<6;i++)
{
q=d2/2;
r=d2%2;
A[i]=r;
d2=q;
}
for (i=i-1;i>=0;i--)
{
binn*=10;
binn+=A[i]; }
cout<<"\n "<<binn<<endl; }
void main()
{
clrscr();
int a;
cout<<"\n Enter the number you want to covert from octal to binary:";
cin>>a;
octobin(a);
getch();
}
OUTPUT:
Q3-PROGRAM TO HOLD THE DETAILS OF 5 STUDENTS AND PROVIDE THE FACILITY OF
VIEWING.

#include<iostream.h>
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
class student
{
int rollno;
char name[25];
float marks;
char grade;
public:
void readstudent()
{
cout<<"\n Enter rollno :"; cin>>rollno;
cout<<"\n Enter name: "; gets(name);
cout<<"\n Enter marks :"; cin>>marks;
}
void dispstudent()
{
calcgrade();
cout<<"\n Roll no:"<<rollno;
cout<<"\n Name:"<<name;
cout<<"\n Marks:"<<marks;
cout<<"\n grade:"<<grade;
}
int getrollno()
{
return rollno;
}
float getmarks()
{
return marks;
}
void calcgrade()
{
if(marks>=75)
grade='O';
else if(marks>=60)
grade='A';
else if(marks>=50)
grade='B';
else if(marks>=40)
grade='C';
else
grade='F';
}
};
int main()
{
clrscr();
student xiia[5];
for (int i=0;i<5;++i)
{
cout<<"\n Enter details of the student "<<i+1<<":";
xiia[i].readstudent();
}
int choice,rno,pos= -1,highmarks=0;
do
{
cout<<"\n\n Main Menu\n";
cout<<"1.Specific Stduent \n";
cout<<"2.Topper \n";
cout<<"3.Exit \n";
cout<<"\n Enter your choice(1-3):";
cin>>choice;
switch(choice)
{
case 1: cout<<"\n Enter roll no of student whose details you want to see:";
cin>>rno;
for (i=0;i<5;++i)
{
if (xiia[i].getrollno()==rno)
{
xiia[i].dispstudent();
break;
}
}
if (i==5)
cout<<"\n INVALID ROLLNO!!!\n";
break;
case 2:for(i=0;i<5;++i)
{
if(xiia[i].getmarks() > highmarks)
{
pos=i;
highmarks=xiia[i].getmarks();
}
}
xiia[pos].dispstudent();
break;
case 3: break;
default:cout<<"\n Wrong Choice!!\n";
break;
}
}
while(choice>=1&&choice<3);
return 0;
}
OUTPUT:
Q4-PROGRAM TO DEFINE A CLASS RESORT IN C++ WITH THE FOLLOWING
DESCRIPTION:
PRIVATE MEMBER:
RNO-STORE ROOM NUMBER
NAME-STORE CUSTOMER NAME
CHARGES-STORE PER DAY CHARGES
DAYS-NUMBER OF DAYS OF STAY
compute()- CALCULATE AMOUNT AS DAYS*CHARGES AND IF IT>11000 THEN AS
1.02*DAYS*CHARGES
PUBLIC MEMBER:
getinfo()- ENTER RNO, NAME, CHARGES, DAYS
dispinfo()- DISPLAY RNO

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
class RESORT
{private:
int Rno;
char name[20];
float charges;
int days;
float compute();
public:
void getinfo();
void dispinfo();
};
void RESORT::getinfo()
{
cout<<"Enter Registration number:";
cin>>Rno;
cout<<"\nEnter name:";
gets(name);
cout<<"\nEnter per day charges:";
cin>>charges;
cout<<"\nEnter number of days:";
cin>>days;}
void RESORT::dispinfo()
{cout<<"\n1. Registration number:"<<Rno<<"\n2. Name:";puts(name);
cout<<"3. Charges per day:"<<charges<<"\n4. Number of days:"<<days;
cout<<"\n5. Amount:"<<compute();}
float RESORT::compute()
{
long float amount=charges*days;
if(amount>11000)
amount=1.02*days*charges;
return amount;
}
RESORT obj;
void main()
{
clrscr();
obj.getinfo();
obj.dispinfo();
getch();
}

OUTPUT
:

Q5-PROGARM TO SHOW THE IMPLEMENTATION OF OVERLAODED CONSTRUCTOR.


#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
class deposit
{
long int principal;
int time;
float rate;
float totalamt;
public:
deposit();
deposit(long p,int t, float r);
deposit(long p,int t);
deposit(long p,double r);
void calcamt(void);
void display();
};
deposit::deposit()
{principal=time=rate-0.0;}
deposit::deposit(long p,int t,float r)
{principal=p;time=t;rate=r;}
deposit::deposit(long p,int t)
{principal=p; time=t; rate=0.08;}
deposit::deposit(long p,double r)
{principal=p; time=2; rate=r;}
void deposit::calcamt(void)
{ totalamt=principal+(principal*time*rate)/100;}
void deposit::display(void)
{
cout<<"\n Principal Amount : Rs."<<principal;
cout<<"\n Period of investment : "<<time<<" years";
cout<<"\n Rate of interest : "<<rate;
cout<<"\n Total Amount : Rs."<<totalamt<<" \n";
}
int main()
{
clrscr();
deposit d1,d2(2000,2,0.07),d3(4000,6),d4(3000,0.2);
d1.calcamt();
d2.calcamt();
d3.calcamt();
d4.calcamt();
cout<<" Object 1 \n"; d1.display();
cout<<" Object 2 \n"; d2.display();
cout<<" Object 3 \n"; d3.display();
cout<<" Object 4 \n"; d4.display();
return 0;
}
OUTPUT:

Q6-PROGRAM TO ACCESS THE MEMBER IN THE PUBLIC DERIVATION OF CLASS.


#include<iostream.h>
#include<stdio.h>
#include<conio.h>
const int len=25;
class employee
{
char name[len];
unsigned long enumb;
public:
void getdata()
{
cout<<" Enter Name: ";
gets(name);
cout<<" Enter Employee Number : ";
cin>>enumb;
}
void putdata()
{
cout<<" Name : "<<name<<"\t";
cout<<" Emp.Number :"<<enumb<<"\t";
cout<<" Basic Salary : "<<basic ;
}
protected:
float basic;
void getbasic()
{cout<<" Enter Basic : "; cin>>basic;}
};
class manager: public employee
{
char title[len];
public:
void getdata()
{
employee::getdata();
getbasic();
cout<<" Enter title : ";
gets(title);
cout<<" \n ";
}
void putdata()
{
employee::putdata();
cout<<"\tTitle : "<<title<<" \n ";
}
};
void main()
{
clrscr();
manager m1,m2;
cout<<" Manager 1 \n"; m1.getdata();
cout<<" Manager 2 \n"; m2.getdata();
cout<<"\t\t Manager 1 Details\n"; m1.putdata();
cout<<"\t\t Manager 2 Details\n"; m2.putdata();
getch();
}

OUTPUT
:

Q7-PROGRAM TO ACCESS INHERITED MEMBER IN PRIVATELY DERIVED CLASS.


#include<iostream.h>
#include<stdio.h>
#include<conio.h>
const int len=25;
class employee
{
char name[len];
unsigned long enumb;
public:
void getdata()
{
cout<<" Enter Name: ";
gets(name);
cout<<" Enter Employee Number : ";
cin>>enumb;
}
void putdata()
{
cout<<" Name : "<<name<<"\t";
cout<<" Emp.Number :"<<enumb<<"\t";
cout<<" Basic Salary : "<<basic ;
}
protected:
float basic;
void getbasic()
{cout<<" Enter Basic : "; cin>>basic;}
};
class manager: private employee
{
char title[len];
public:
void getdata()
{
employee::getdata();
getbasic();
cout<<" Enter title : ";
gets(title);
cout<<" \n ";
}
void putdata()
{
employee::putdata();
cout<<"\tTitle : "<<title<<" \n ";
}
};
void main()
{clrscr();
manager m1,m2;
cout<<" Manager 1 \n"; m1.getdata();
cout<<" Manager 2 \n"; m2.getdata();
cout<<"\t\t Manager 1 Details\n"; m1.putdata();
cout<<"\t\t Manager 2 Details\n"; m2.putdata();
getch();
} OUTPUT:
Q8-PROGRAM TO IMPLEMENT MULTILEVEL INHERITANCE.
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
const int len=25;
class person
{ char name[len];
int age;
public:
void readperson();
void displayperson()
{
cout<<" Name : ";
cout.write(name,len);
cout<< " \tAge : "<<age<<" \n ";
}
};
void person::readperson()
{
for(int i=0;i<len;i++) name[i]=' ';
cout<<" Enter Name of the person : ";
gets(name);
cout<<" Enter Age : ";cin>>age;
}
class student:public person
{
int rollno;
float avg;
public:
void readstudent()
{
readperson();
cout<<" Enter Roll Number : "; cin>>rollno;
cout<<" Enter Average Marks : "; cin>>avg;
}
void disproll()
{
cout<<" Roll Number : "<<rollno<<" \n ";
}
float getavg()
{return avg;}
};
class gradstudent:public student
{
char subject[len];
char working;
public:
void readit();
void displaysubject()
{cout<<" Subject : ";
cout.write(subject,len);
}
char workstatus()
{return working;}
};
void gradstudent::readit()
{
readstudent();
for(int i=0;i<len;i++) subject[i]=' ';
cout<<" Enter Main Subject : ";
gets(subject);
cout<<" Working ?(Y/N) : "; cin>>working;
}
void main()
{
clrscr();
const int size=5;
gradstudent grad[size];
int year,numworking=0,nonworking=0,div1=0,total=0;
float topscore=0,score,number,wperc,nwperc;
cout<<" Enter Year : "; cin>>year;
for(int i=0;i<size;i++)
{
cout<<" Enter Details for Graduate "<< (i+1) <<" \n ";
grad[i].readit();
total++;
if((grad[i].workstatus()=='Y')||(grad[i].workstatus()=='y'))
numworking++;
else
nonworking++;
score=grad[i].getavg();
if(score>topscore)
{topscore=score;number=i;}
if(score>60.0) div1++;
}
i=number;
cout<<" \n "<<"\t\tReport for the Year "<<year<<" \n ";
cout<<"\t\t------------------------\n ";
cout<<" Working Graduates : "<<numworking;
cout<<"\tNon-Working Graduates : "<<nonworking<<" \n ";
cout<<"\tDetails of the Top Scorer \n";
grad[i].displayperson();
grad[i].displaysubject();
nwperc=((float)nonworking/(float)total)*100;
wperc=((float)div1/(float)total)*100;
cout<<"\tAverage Marks : "<<grad[i].getavg()<<" \n ";
cout<<'\t'<<nwperc<<" % of the graduates this year are Non-Working and \n"
<<wperc<<" % are first divisoners \n";
getch();
}
Output:

Q9-PROGRAM TO WRITE AND READ A STRUCTURE USING read() AND write()


FUNCTION USING BINARY FILE.
#include <iostream.h>
#include <fstream.h>
#include<string.h>
#include<stdlib.h>
struct customer
{ char name[51];
float balance; };
int main()
{ customer savac ;
strcpy(savac.name,"Tina Marshall");
savac.balance=21310.75;
ofstream fout;
fout.open("saving",ios::out|ios::binary);

fout.write((char*)&savac,sizeof(customer));
fout.close();

ifstream fin;
fin.open("saving",ios::in|ios::binary);
fin.read((char*)&savac,sizeof(customer));
cout<<savac.name<<" has balance amount of Rs."<<savac.balance;
fin.close();
return 0;}

OUTPUT:

Q10-PROGARM FOR READING AND WRITING CLASS OBJECTS.


#include<iostream.h>
#include<conio.h>
#include<fstream.h>
#include<stdlib.h>
#include<stdio.h>
class student
{
char name[40];
char grade[3];
float marks;
public:
void getdata();
void display();
};
void student::getdata()
{
char ch;
cin.get(ch);
cout<<" Enter Name : "; cin.getline(name,40);
cout<<" Enter Grade : "; gets(grade);
cout<<" Enter Marks : "; cin>>marks;
cout<<" \n ";
}
void student::display()
{
cout<<" Name : "<<name<<"\t"
<<" Grade : "<<grade<<"\t"
<<" Marks : "<<marks<<"\t"<<" \n ";
}
int main()
{
clrscr();
student arts[3];
fstream filin;
filin.open("Stu.dat",ios::in|ios::out);
if(!filin)
{
cout<<" Cannot open file !! \n";
return 1;
}
cout<<" Enter details for 3 students \n";
for(int i=0;i<3;i++)
{
arts[i].getdata();
filin.write((char*)&arts[i],sizeof(arts[i]));
}
filin.seekg(0);
cout<<" The contents of std.dat are shown below. \n";
for(i=0;i<3;++i)
{filin.read((char*)&arts[i],sizeof(arts[i]));
arts[i].display();
}
filin.close();
getch();
}
OUTPUT:
Q11-PROGRAM TO SEARCH IN A FILE HAVING REOCRDS MAINTAINED THROUGH
CLASSES.
#include<fstream.h>
#include<conio.h>
#include<stdlib.h>

class student
{
int rollno;
char name[20];
char branch[3];
float marks;
char grade;

public:
void getdata()
{
cout<<"Rollno: ";
cin>>rollno;
cout<<"Name: ";
cin>>name;
cout<<"Branch: ";
cin>>branch;
cout<<"Marks: ";
cin>>marks;

if(marks>=75)
{
grade = 'A';
}
else if(marks>=60)
{
grade = 'B';
}
else if(marks>=50)
{
grade = 'C';
}
else if(marks>=40)
{
grade = 'D';
}
else
{
grade = 'F';
}
}

void putdata()
{
cout<<name<<", rollno "<<rollno<<" has ";
cout<<marks<<"% marks and "<<grade<<" grade."<<"\n";
}

int getrno()
{
return rollno;
}
}stud1;

void main()
{
clrscr();

ofstream fout("marks.dat", ios::out);


char ans='y';
while(ans=='y' || ans=='Y')
{
stud1.getdata();
fout.write((char *)&stud1, sizeof(stud1));
cout<<"Record added to the file\n";
cout<<"\nWant to enter more ? (y/n)..";
cin>>ans;
}
fout.close();

clrscr();
int rno;
char found;
ifstream fin("marks.dat", ios::in);

found = 'n';
cout<<"Enter rollno to be searched for: ";
cin>>rno;

while(!fin.eof()) // end-of-file used here


{
fin.read((char *)&stud1, sizeof(stud1));
if(stud1.getrno() == rno)
{
cout<<"Record found at roll number "<<rno<<". Here is the record\n";

stud1.putdata();
found = 't';
break;
}
}
if(found=='n')
{
cout<<"\nRecord not found at this roll number..!!\n";
cout<<"Press any key to exit...\n";
getch();
exit(2);
}

fin.close();
cout<<"\nPress any key to exit...\n";
getch();
}

OUTPUT :
Q12-PROGRAM TO INSERT, MODIFY AND DELETE DATA IN A SORTED FILE
#include<fstream.h>
#include<string.h>
#include<stdio.h>
#include<conio.h>
int opt;
class housing
{
int hno,income;
char name[20],type[20];
public:
void assign()
{
if(income<15000)
strcpy(type,"LIG");
else if(income>=15000)
strcpy(type,"MIG");
else if(income>=25000)
strcpy(type,"HIG");
}
void input()
{
cout<<"\n Enter House Number: ";
cin>>hno;
cout<<"\n House Name: ";
gets(name);
cout<<"\n Annual Income: ";
cin>>income;
assign();
}
void output()
{
cout<<"House Number: "<<hno<<"\n"<<"House Name: "<<name<<"\n"<<"Annual
Income: "<<income<<"\n"<<"Type: "<<type;
}
int retno()
{
return hno;
}
};

void main()
{
housing h,h1;
fstream f;
int hono;
cout<<"\n 1:Add a Record"<<'\t'<<"\n 2:Modify"<<'\t'<<"\n 3:Display All Records"<<'\t'<<"\n
4:Exit"<<endl;
cin>>opt;
if(opt==1)
{
char ch='y';
f.open("hous.dat",ios::out|ios::binary|ios::app);
while(ch=='y')
{
cout<<"\n Enter Details: ";
h.input();
f.write((char*)&h,sizeof(h));
cout<<"\n Want to Enter More? y/n: "<<endl;
cin>>ch;
}
f.close();
}
if(opt==2)
{
cout<<"\n Enter House No of Record to be modified: ";
cin>>hono;
f.open("hous.dat",ios::in|ios::out|ios::binary|ios::ate);
f.seekg(0);
while(f.read((char*)&h,sizeof(h)))
{
if(h.retno()==hono)
{
cout<<"\n New Value: ";
h1.input();
f.seekp(-sizeof(h),ios::cur);
f.write((char*)&h1,sizeof(h1));
}
}
f.close();
}
if(opt==3)
{
f.open("hous.dat",ios::in|ios::binary);
f.seekg(0);
while(f.read((char*)&h,sizeof(h)))
h.output();
f.close();
}
if(opt==4)
exit(0);
cout<<"\nPress ... ";
getch();
}
OUTPUT:

Q13-PROGRAM TO ENTER DYNAMIC ARRAY.


#include<iostream.h>
#include<conio.h>
int main()
{ clrscr();
int *arr;
int i,n;

cout<<"Enter total number of elements:";


cin>>n;
arr=new int(n);
cout<<"Input "<<n<<" elements"<<endl;
for(i=0;i<n;i++)
{ cout<<"Input element "<<i+1<<": ";
cin>>arr[i];
}
cout<<"Entered elements are: ";
for(i=0;i<n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;

delete (arr);
return 0;
}

OUTPUT:
Q14- PROGRAM TO SEARCH IN AN ARRAY [USE BINARY SEARCH].
#include<iostream.h>
#include<conio.h>
void main()
{
clrscr();
int n, i, arr[50], search, first, last, middle;
cout<<"Enter total number of elements :";
cin>>n;
cout<<"Enter "<<n<<" number :";
for (i=0; i<n; i++)
{
cin>>arr[i];
}
cout<<"Enter a number to find :";
cin>>search;
first = 0;
last = n-1;
middle = (first+last)/2;
while (first <= last)
{
if(arr[middle] < search)
{
first = middle + 1;
}
else if(arr[middle] == search)
{
cout<<search<<" found at location "<<middle+1<<"\n";
break;
}
else
{
last = middle - 1;
}
middle = (first + last)/2;
}
if(first > last)
{
cout<<"Not found! "<<search<<" is not present in the list.";
}
getch();
}

OUTPUT:
Q15-PROGRAM TO IMPLEMENT SELECTION SORT , BUBBLE SORT AND INSERTION
SORT.
#include<iostream.h>
#include<conio.h>

void accept(int Arr[], int s);


void display(int Arr[], int s);
void isort(int Arr[], int s);
void ssort(int Arr[], int s);
void bsort(int Arr[],int s);

int main()
{
clrscr();
int Arr[100],n,choice;
cout<<"Enter Size of Array ";
cin>>n;
do
{
cout<<"\n\nMENU";
cout<<"\n1. Accept elements of array";
cout<<"\n2. Display elements of array";
cout<<"\n3. Sort the array using insertion sort method";
cout<<"\n4. Sort the array using selection sort method";
cout<<"\n5. Sort the array using bubble sort method";
cout<<"\n6. Exit";
cout<<"\n\nEnter your choice 1-6 :";
cin>>choice;

switch(choice)
{
case 1: accept(Arr,n);
break;
case 2: display(Arr,n);
break;
case 3: isort(Arr,n);
break;
case 4: ssort(Arr,n);
break;
case 5: bsort(Arr,n);
break;
case 6: break;
default:cout<<"\nInvalid choice";
}
}while(choice!=6);
return 0;
}
void accept(int Arr[], int s)
{
for(int I=0;I<s;I++)
{
cout<<"Enter element "<<I+1<<":";
cin>>Arr[I];
}
}
void display(int Arr[], int s)
{
cout<<"The elements of the array are:\n";
for(int I=0;I<s;I++)
cout<<Arr[I]<<" ";
}
void isort(int Arr[], int s)
{
int I,J,Temp;
for(I=1;I<s;I++)
{
Temp=Arr[I];
J=I-1;
while((Temp<Arr[J]) && (J>=0))
{
Arr[J+1]=Arr[J];
J--;
}
Arr[J+1]=Temp;
}
}
void ssort(int Arr[], int s)
{
int I,J,Temp,Small;
for(I;I<s-1;I++)
{
Small=I;
for(J=I+1;J<s;J++)
if(Arr[J]<Arr[Small])
Small=J;
if(Small!=I)
{
Temp=Arr[I];
Arr[I]=Arr[Small];
Arr[Small]=Temp;
}
}
}

void bsort(int Arr[],int s)


{
int I,J,Temp;
for(I=0;I<s-1;I++)
{
for(J=0;J<(s-1-I);J++)
if(Arr[J]>Arr[J+1])
{
Temp=Arr[J];
Arr[J]=Arr[J+1];
Arr[J+1]=Temp;
}
}
}

OUTPUT:
Q16-TO SWAP ELEMENT WITH ADJACENT ELEMENT IN STRING.
#include<iostream.h>
#include<conio.h>

void accept(int Arr[], int s);


void display(int Arr[], int s);
void swaparray(int Arr[], int s);
void main()
{
clrscr();
int Arr[100],n;
cout<<"Enter Size of Array ";
cin>>n;
accept(Arr,n);
display(Arr,n);
swaparray(Arr,n);
cout<<"\n ARRAY AFTER SWAPPING "<<endl;
display(Arr,n);
getch();
}
void accept(int Arr[], int s)
{
for(int I=0;I<s;I++)
{
cout<<"Enter element "<<I+1<<":";
cin>>Arr[I];
}
}
void display(int Arr[], int s)
{
cout<<"\n The elements of the array are:"<<endl;
for(int I=0;I<s;I++)
cout<<Arr[I]<<" ";
}
void swaparray(int Arr[], int s)
{
int tmp,I,J;
for(I=0;I<s;I+=2)
{
J=I+1;
tmp=Arr[I];
Arr[I]=Arr[J];
Arr[J]=tmp;
}
}

OUTPUT:
Q17- PROGRAM TO ACCEPT AN INTEGER ARRAY AND ITS SIZE AS ARGUMENT.
EXCHANGE THE VALUES OF FIRST HALF SIDE ELEMENTS WITH SECOND HALF
SIDE ELEMENTS.
#include<iostream.h>
#include<conio.h>

void accept(int Arr[], int s);


void display(int Arr[], int s);
void swap(int Arr[], int s);
void main()
{
clrscr();
int Arr[100],n;
cout<<"Enter Size of Array ";
cin>>n;
accept(Arr,n);
display(Arr,n);
swap(Arr,n);
cout<<"\n ARRAY AFTER SWAPPING "<<endl;
display(Arr,n);
getch();
}
void accept(int Arr[], int s)
{
for(int I=0;I<s;I++)
{
cout<<"Enter element "<<I+1<<":";
cin>>Arr[I];
}
}
void display(int Arr[], int s)
{
cout<<"\n The elements of the array are:"<<endl;
for(int I=0;I<s;I++)
cout<<Arr[I]<<" ";
}
void swap(int Arr[], int s)
{
int tmp,I,J,mid=s/2;
if(s%2==0)
J=mid;
else
J=mid+1;
for(I=0;I<mid;I++,J++)
{
tmp=Arr[I];
Arr[I]=Arr[J];
Arr[J]=tmp;
}
}

OUTPUT:
Q 18- PROGRAM TO IMPLEMENT MERGING IN ARRAY. ONE IN ASCENDING,
ANOTHER IN DESCENDING AND MERGE AND STORE IN ASCENDING ORDER.
#include<iostream.h>
void Merge(int A[], int B[], int C[], int N, int M, int &K);
int main()
{
int A[100], B[100], C[200],i,n,m,k;
cout<<"\nEnter number of elements you want to insert in first array ";
cin>>n;
cout<<"Enter element in ascending order\n";
for(i=0;i<n;i++)
{
cout<<"Enter element "<<i+1<<":";
cin>>A[i];
}

cout<<"\nEnter number of elements you want to insert in second array ";


cin>>m;
cout<<"Enter element in descending order\n";
for(i=0;i<m;i++)
{
cout<<"Enter element "<<i+1<<":";
cin>>B[i];
}

Merge(A,B,C,n,m,k);
cout<<"\nThe Merged Array in Ascending Order"<<endl;
for(i=0;i<k;i++)
{
cout<<C[i]<<" ";
}
return 0;
}
void Merge(int A[], int B[], int C[], int N, int M, int &K)
{
int I=0, J=M-1;
K=0;
while (I<N && J>=0)
{
if (A[I]<B[J])
C[K++]=A[I++];
else if (A[I]>B[J])
C[K++]=B[J--];
else
{
C[K++]=A[I++];
J--;
}
}
for (int T=I;T<N;T++)
C[K++]=A[T];
for (int T=J;T>=0;T--)
C[K++]=B[T];
}

OUTPUT:
Q19-PROGRAM TO IMPLEMENT INSERTION AND DELETION IN THE BEGINNING OF
THE LINKED LIST.
#include <iostream.h>
#include<conio.h>
struct Node{
int num;
Node *next;
};
struct Node *head=NULL;
void insertNode(int n){
struct Node *newNode=new Node;
newNode->num=n;
newNode->next=head;
head=newNode;
}
void display(){
if(head==NULL){
cout<<"List is empty!"<<endl;
return;
}
struct Node *temp=head;
while(temp!=NULL){
cout<<temp->num<<" ";
temp=temp->next;
}
cout<<endl;
}
void deleteItem(){
if(head==NULL){
cout<<"List is empty!"<<endl;
return;
}
cout<<head->num<<" is removed."<<endl;
head=head->next;
}
int main()
{
clrscr();
display();
insertNode(10);
insertNode(20);
insertNode(30);
insertNode(40);
insertNode(50);
display();
deleteItem(); deleteItem(); deleteItem(); deleteItem(); deleteItem();
deleteItem();
display();
return 0;
}

OUTPUT:

Q20--PROGRAM TO SHOW PUSH AND POP IN ARRAY STACK AND LINKED STACK.
#include<iostream.h>
#define MAX 5
int STACK[MAX],TOP;
void initStack(){
TOP=-1;
}
int isEmpty(){
if(TOP==-1)
return 1;
else
return 0;
}
int isFull(){
if(TOP==MAX-1)
return 1;
else
return 0;
}
void push(int num){
if(isFull()){
cout<<"STACK is FULL."<<endl;
return;
}
++TOP;
STACK[TOP]=num;
cout<<num<<" has been inserted."<<endl;
}
void display(){
int i;
if(isEmpty()){
cout<<"STACK is EMPTY."<<endl;
return;
}
for(i=TOP;i>=0;i--){
cout<<STACK[i]<<" ";
}
cout<<endl;
}
void pop(){
int temp;
if(isEmpty()){
cout<<"STACK is EMPTY."<<endl;
return;
}
temp=STACK[TOP];
TOP--;
cout<<temp<<" has been deleted."<<endl;
}
int main(){
int num;
initStack();
char ch;
do{
int a;
cout<<"Chosse \n1.push\n"<<"2.pop\n"<<"3.display\n";
cout<<"Please enter your choice: ";
cin>>a;
switch(a)
{
case 1:
cout<<"Enter an Integer Number: ";
cin>>num;
push(num);
break;
case 2:
pop();
break;
case 3:
display();
break;
default :
cout<<"An Invalid Choice!!!\n";
}
cout<<"Do you want to continue ? ";
cin>>ch;
}while(ch=='Y'||ch=='y');
return 0;
}

OUTPUT:
Q21- PROGRAM TO SHOW INSERTION AND DELETION IN CIRCULAR QUEUE.
#include <iostream.h>
#include<conio.h>
int cqueue[5];
int front = -1, rear = -1, n=5;
void insertCQ(int val) {
if ((front == 0 && rear == n-1) || (front == rear+1)) {
cout<<"Queue Overflow \n";
return;
}
if (front == -1) {
front = 0;
rear = 0;
} else {
if (rear == n - 1)
rear = 0;
else
rear = rear + 1;
}
cqueue[rear] = val ;
}
void deleteCQ() {
if (front == -1) {
cout<<"Queue Underflow\n";
return ;
}
cout<<"Element deleted from queue is : "<<cqueue[front]<<endl;
if (front == rear) {
front = -1;
rear = -1;
} else {
if (front == n - 1)
front = 0;
else
front = front + 1;
}
}
void displayCQ() {
int f = front, r = rear;
if (front == -1) {
cout<<"Queue is empty"<<endl;
return;
}
cout<<"Queue elements are :\n";
if (f <= r) {
while (f <= r){
cout<<cqueue[f]<<" ";
f++;
}
} else {
while (f <= n - 1) {
cout<<cqueue[f]<<" ";
f++;
}
f = 0;
while (f <= r) {
cout<<cqueue[f]<<" ";
f++;
}
}
cout<<endl;
}
int main()
{clrscr();
int ch, val;
cout<<"1)Insert\n";
cout<<"2)Delete\n";
cout<<"3)Display\n";
cout<<"4)Exit\n";
do {
cout<<"Enter choice : "<<endl;
cin>>ch;
switch(ch) {
case 1:
cout<<"Input for insertion: "<<endl;
cin>>val;
insertCQ(val);
break;
case 2:
deleteCQ();
break;
case 3:
displayCQ();
break;
case 4:
cout<<"Exit\n";
break;
default: cout<<"Incorrect!\n";
}
}while(ch != 4);
return 0;
}

OUTPUT
22- SQL QUERIES BAESD ON THE GIVEN TABLE.

1.Create Table Perosnal

SQL- create table personal


( empno integer,
name char(30),
dobirth char(20),
nativeplace char(25),
hobby char(20) );
Query OK
OUTPUT:
22.1-TO SEE ALL THE RECORDS OF THE TABLE.
SQL- select * from personal;
Query OK

OUTPUT:
22.2-SHOW EMPNO,NAME AND SALARY OF THOSE WHO HAVE SPORTS AS
HOBBY.
SQL- select empno,name,salary from personal,job where hobby=’Sports’ and
personal.empno=job.sno;
OUTPUT:
22.3-SHOW THE NAME OF THE ELDEST EMPLOYEE.
SQL- select name,max(dobirth) from personal;
OUTPUT:
22.4-SHOW NUMBER OF EMPLOYEE AREA WISE.
SQL- select count(sno),area from job group by area;

OUTPUT:
22.5 SHOW YOUNGEST EMPOLYEES FROM EACH NATIVE PLACE.
SQL- select name,min(dobirth) from personal group by native place;

OUTPUT:
22.6-SHOW SNO,NAME,HOBBY AND SALARY IN DESCENDING ORDER OF
SALARY.
SQL- select sno,name,hobby,salary from personal,job where
personal.empno=job.sno order by salary desc;

OUTPUT:
22.7-SHOW THE HOBBIES OF THOSE WHOSE NAME PRONOUNCES AS
‘ABHAY’.
SQL- select name,hobby from personal where name like ’Abhay’

OUTPUT:

;
22.8-SHOW THE APPOINTMENT DATE AND NATIVE PLACE OF THOSE
WHOSE NAME STARTS WITH ‘A’ OR ENDS IN ‘D’,
SQL- select sno,name,appdate,nativeplace from personal,job where
job.sno=personal.empno and ( name like ‘A%’ or name like ‘%d’);

OUTPUT:
22.9-SHOW THE SALARY EXPENSE WITH SUITABLE COLUMN HEADING OF
THOSE WHO SHALL RETIRE AFTER 20-JAN-2006.
SQL- select sum(salary) from job where redtdate>’20-Jan-2006’;

OUTPUT:
22.10-SHOW ADDITIONAL BURDEN ON THE COMPANY IN CASE SALARY OF
EMPLOYEES HAVING HOBBY AS SPORTS INCREASED BY 10%.
SQL- select (10/100)*salary*12 from job.personal where hobby=’Sports’ and
personal.empno=job.sno;

OUTPUT:
22.11-SHOW HOW MANY EMPLOYEE SHALL RETIRE TODAY OF MAXIMUM
LENGTH OF SERVICE IS 20 YEARS.
SQL- select count(sno) from job where now()-appdate<20;
OUTPUT:
22.12-SHOW THOSE EMPLOYEE NAME AND DATE OF BIRTH WHO HAVE
SERVED MORE THAN 17 YEARS AS ON DATE.
SQL- select name,dobirth from job,personal where now()-appdate>17 and
personal.empno=job.sno;
OUTPUT:
22.13-INCREASE SALARY OF THE EMPLOYEES BY 5% OF THEIR PRESENT
SALARY WITH HOBBY AS MUSIC OR THEY HAVE COMPLETED ATLEAST 3
YEARS OF SERVICE.
SQL- update job,personal set salary=salary+(5/100)*salary where ( hobby=’Music’ or
redtdate-appdate>=3) and personal.empno=job.sno;
OUTPUT:
23-SQL QUERY BASED ON THE GIVEN TABLE .
SQL- create table flights
(flno char(10) ,
start char(20),
end char(20),
noofflights integer,
noofstops integer );
OUTPUT:
23.1-TO SEE ALL THE RECORDS .
SQL- select * from flights;
OUTPUT:
23.2-DISPLAY FLNO AND NO OF FLIGHTS FROM “INDORE” TO
“BANGALORE” FROM THE TABLE FLIGHTS.
SQL- select flno,nooffilghts from flights where start=’indore’ and end=’bangalore’;
OUTPUT:
23.3-ARRANGE THE CONTENTS OF THE TABLE FLIGHTS IN THE ASCENDING
ORDER OF FLNO
SQL- select flno from flights order by flno asc;
OUTPUT:
23.4-DISPLAY THE FLNO AND FARE TO BE PAID FOR THE FLIGHTS FROM
DELHI TO MUMBAI USING THE TABLES FLIGHTS AND FARES, WHERE THE
FARE TO BE PAID=FARE + FARE*TAX%/100.
SQL-select `flights`.`flno`,(`fare`+`fare`*(`tax%`/100)) from `flights`,`fares` where
`starting` like 'delhi' and `ending` like 'mumbai' and `flights`.`flno` = `fares`.`flno`;
OUTPUT:
23.5-DISPLAY THE MINIMUM FARE “INDIAN AIRLINES” IS OFFERING FROM
THE TABLE FARES.
SQL-select min(fare) from fares;
OUTPUT:
23.6-SELECT FL_NO, NOOFFLIGHTS, AIRLINES FROM FLIGHTS, FARES
WHERE STARTING = “DELHI” AND FLIGHTS.FLNO=FARES.FLNO.

SQL- select flights.fl_no,no_flights,fares.airlines from flights,fares where


flights.starting like 'delhi' and flights.fl_no = fares.fl_no;
OUTPUT:
23.6-SELECT COUNT(DISTINCT END) FROM FLIGHTS.
SQL- select count(distinct end) from flights;
OUTPUT:

You might also like