0% found this document useful (0 votes)
662 views

Computer Practical File C++

This document contains a computer practical file using object oriented programming concepts in C++. It lists 21 programs with brief descriptions and sample outputs. The programs cover basic concepts like even/odd determination, tables, factorials, as well as more advanced OOP concepts like inheritance, polymorphism, and exception handling. Each program is numbered and dated, showing the progress and increasing complexity of concepts covered over time.

Uploaded by

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

Computer Practical File C++

This document contains a computer practical file using object oriented programming concepts in C++. It lists 21 programs with brief descriptions and sample outputs. The programs cover basic concepts like even/odd determination, tables, factorials, as well as more advanced OOP concepts like inheritance, polymorphism, and exception handling. Each program is numbered and dated, showing the progress and increasing complexity of concepts covered over time.

Uploaded by

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

COMPUTER

PRACTICAL FILE

Using concepts of Object
Oriented Programming
with C++


SUSHANT MONGIA
A2305111007
2-ECE-01-(X)
Program List Date:
1) WAP in C++ to find whether the number entered by the
user is even or odd.

14/12/2011
2) WAP in C++ to print the table of a number entered by
the user.

14/12/2011
3) WAP in C++ to find the factorial of a number entered by
the user.

21/12/2011
4) WAP in C++ to swap two numbers using call by value.

21/12/2011
5) WAP in C++ to implement inline function.

04/01/2012
6) WAP in C++ to implement friend function with functions
definitions inside the class.

04/01/2012
7) WAP in C++ using friend function to add two complex
numbers with functions definitions outside the class.

11/01/2012
8) WAP in C++ using static data member as a counter.

11/01/2012
9) WAP in C++ to implement array of objects, creating a
class employee and accepting and displaying multiple
datasets accepted by the user using array of objects.

18/01/2012
10) WAP in C++ to implement default constructor.

18/01/2012
11) WAP in C++ to implement parameterized constructor.

25/01/2012
12) WAP in C++ to implement copy constructor.

25/01/2012
13) WAP in C++ to implement Single inheritance.

01/02/2012
14) WAP in C++ to implement multi-level inheritance.

01/02/2012
15) WAP in C++ to implement multiple inheritance.

08/02/2012
16) WAP in C++ to implement hierarchical inheritance.

08/02/2012
17) WAP in C++ to implement hybrid inheritance.

22/02/2012
18) WAP in C++ to implement virtual base class.

22/02/2012
19) Write a program to illustrate application of exception
handling.
No output
29/02/2012
20) Write a program to copy the contents of one file to
other.
No output
07/03/2012
21) Write a program to read from two files simultaneously.

14/03/2012





1. WAP in C++ to find whether the number entered by the user is even or odd.
#include<iostream.h>
#include<conio.h>
void main ()
{
int i;
cout << "Enter an integer"<< endl;
cin >> i;
if ( i % 2== 0 )
cout << i << " is even"<<endl;
else
cout << I << " is odd "<<endl;
getch();
}


Output:
Enter an integer
2
2 is even



2. WAP in C++ to print the table of a number entered by the user.
#include<iostream.h>
#include<conio.h>
void main ()
{
int a ;
cout << "Enter an integer" << endl ;
cin >> a ;
for ( int i = 1 ; i <= 10 ; i++)
cout << a << " x " << i << " = " << i*a << "\n" ;
getch();
}
Output:
Enter an integer
5
5 x 1 =5
5 x 2 =10
5 x 3 =15
5 x 4 =20
5 x 5 =25
5 x 6 =30
5 x 7 =35
5 x 8 =40
5 x 9 =45
5 x 10 =50
3. WAP in C++ to find the factorial of a number entered by the user.
#include<iostream.h>
#include<conio.h>
void main ()
{
int a ;
cout << " Please enter an integer " << endl ;
cin >> a ;
for ( int i = a - 1 ; i >= 1 ; i--)
a = a * i ;
cout << " Factorial = " << a << "\n" ;
getch();
}
Output:
Enter an integer
4
Factorial = 24







4. WAP in C++ to swap two numbers using call by value.
#include<iostream.h>
#include<conio.h>
void swap ( int , int ) ;
void swap ( int x , int y )
{
int temp;
temp = x;
x = y;
y = temp;
cout << "\n After swapping \n";
cout << " a = " << x <<"\n";
cout << " b = " << y ;
}
void main ()
{
int a , b ;
cout << " Enter a " ;
cin >> a ; Output:
cout << " Enter b "; Enter a 20
cin >> b ; Enter b 65
swap( a , b ); After swapping
getch(); a = 65
} b = 20
5. WAP in C++ to implement inline function.
#include<iostream.h>
#include<conio.h>
inline float mul ( float x , float y )
{
return ( x * y ) ;
}
inline double div ( double p , double q )
{
return ( p / q ) ;
}
void main ()
{
float a = 12.345 , b = 9.82 ;
cout << mul(a,b) << "\n" ;
cout << div(a,b) << "\n" ;
getch();
}
Output:
121.227898
1.257128



6. WAP in C++ to implement friend function with functions definitions inside the
class.
#include<iostream.h>
#include<conio.h>
class sample
{
int a;
int b;
public:
void setvalue() { a=25 ; b=40 ; }
friend float mean( sample s ) ;
};
float mean ( sample s)
{
return float ( s.a + s.b ) / 2.0 ;
} Output:
void main () Mean value = 32.5
{
sample x;
x.setvalue();
cout << "Mean value = " << mean(x) << "\n" ;
getch();
}

7. WAP in C++ using friend function to add two complex numbers with functions
definitions outside the class.
#include<iostream.h>
#include<conio.h>
int r , i ;
class complex
{
int real;
int imag;
public:
void get() ;
friend void add() ;

} c1 , c2 ;
void complex :: get()
{
cout << "\n Enter real part: " ;
cin >> real ;
cout << "Enter imaginary part: ";
cin >> imag ;
}
void add()
{
r = c1.real + c2.real ;
i = c1.imag + c2.imag ;
}

void main ()
{
c1.get();
c2.get();
add();
cout << " \n complex no is " << r << " + i " << i ;
getch();
}

Output:
Enter real part: 10
Enter imaginary part: 21
Enter real part: 5
Enter imaginary part: 7
complex no is 15 + i 28






8. WAP in C++ using static data member as a counter.
#include<iostream.h>
#include<conio.h>
class item
{
static int count;
int number;
public:
void getdata( int a )
{
number = a ;
count ++ ;
}
void getcount( void )
{
cout << " count : " ;
cout << count << "\n" ;
}

} ;
int item :: count ;
void main ()
{
item a , b , c ;
a.getcount();
b.getcount();
c.getcount();
a.getdata(100);
b.getdata(200);
c.getdata(300);
cout << " After reading data " << "\n" ;
a.getcount();
b.getcount();
c.getcount();
getch();
}
Output:
count : 0
count : 0
count : 0
After reading data
count : 3
count : 3
count : 3



9. WAP in C++ to implement array of objects, creating a class employee and
accepting and displaying multiple datasets accepted by the user using array of
objects.
#include<iostream.h>
#include<conio.h>
class employee
{
char name[30];
float age;
public:
void getdata( void ) ;
void putdata( void ) ;

} ;
void employee :: getdata(void)
{
cout << "Enter name : " ;
cin >> name ;
cout << "Enter age : " ;
cin >> age ;
}
void employee :: putdata(void)
{
cout << "Name : " << name << "\n" ;
cout << "Age : " << age << "\n" ;
}
const int size=3 ;
void main ()
{
employee manager[size];
for(int i = 0 ; i < size ; i++)
{
cout << "\n Details of manager" << i+1 << "\n" ;
manager[i].getdata();
}
cout << "\n" ;
for(i=0;i<size;i++)
{
cout << " \n Manager " << i+1 << "\n" ;
manager[i].putdata();
}
getch();
}



Output:
Details of manager1
Enter name : ABC
Enter age : 25
Details of manager2
Enter name : DEF
Enter age :28
Details of manager3
Enter name : GHI
Enter age : 32
Manager1
Name : ABC
Age : 25
Manager2
Name : DEF
Age :28
Manager3
Name : GHI
Age : 32





10. WAP in C++ to implement default constructor.
#include<iostream.h>
#include<conio.h>
class defa
{
int a ;
int b ;
public:
defa ( )
{
cout << "Default constructor is called" << "\n" ;
}

} ;

void main ()
{
defa D ;
getch();
}
Output:
Default constructor is called


11. WAP in C++ to implement parameterized constructor.
#include<iostream.h>
#include<conio.h>
class para
{
int a ;
int b ;
public:
para ( int x , int y )
{
a = x ;
b = y ;
}
void disp()
{
cout << "a = " << a << "\n b = " << b ;
}
} ;
void main ()
{
para P( 100 , 200 ) ; Output:
P.disp(); a = 100
getch(); b = 200
}
12. WAP in C++ to implement copy constructor.
#include<iostream.h>
#include<conio.h>
class code
{
int id ;
public:
code ( )
{ }
code ( int a )
{
id = a ;
}
code ( code & x)
{
id = x.id ;
}
void display(void)
{
cout << id ;
}
} ;


void main ()
{
code A(100);
code B(A);
code C = A;
code D;
D = A;
cout << "\n id of A: " ; A.display() ;
cout << "\n id of B: " ; B.display() ;
cout << "\n id of C: " ; C.display() ;
cout << "\n id of D: " ; D.display() ;
getch();
}

Output:
id of A: 100
id of B: 100
id of C: 100
id of D: 100





13. WAP in C++ to implement Single inheritance.
#include<iostream.h>
#include<conio.h>
class B
{
int a ;
public:
int b ;
void set_ab();
int get_a();
void show_a();
} ;
class D : public B
{
int c ;
public:
void mul ();
void display();
};
void B :: set_ab()
{
a = 5 ;
b = 10 ;
}
int B :: get_a()
{
return a ;
}
void B :: show_a()
{
cout << "a = " << a << "\n" ;
}
void D :: mul ()
{
c = b * get_a() ;
}
void D :: display()
{
cout << "a = " << get_a() << "\n";
cout << "b = " << b << "\n" ;
cout << "c = " << c << "\n\n" ;
}
void main ()
{
D d ;
d.set_ab();
d.mul();
d.show_a();
d.display();
d.b = 20 ;
d.mul ();
d.display();
getch();
}
Output:
a = 5
a = 5
b = 10
c = 50

a = 5
b = 20
c = 100









14. WAP in C++ to implement multi-level inheritance.
#include<iostream.h>
#include<conio.h>
class student
{
protected:
int roll_number;
public:
void get_number(int);
void put_number(void);
} ;
void student :: get_number(int a)
{
roll_number = a ;
}
void student :: put_number()
{
cout << "Roll number : " << roll_number << "\n" ;
}
class test : public student
{
protected:
float sub1;
float sub2;
public:
void get_marks(float,float);
void put_marks(void);
};
void test :: get_marks(float x, float y)
{
sub1 = x;
sub2 = y;
}
void test :: put_marks()
{
cout << "Marks in sub 1 = " << sub1 << "\n" ;
cout << "Marks in sub 2 = " << sub2 << "\n" ;
}
class result : public test
{
float total ;
public:
void display(void);
};
void result :: display()
{
total = sub1 + sub2 ;
put_number();
put_marks();
cout << "Total = " << total << "\n" ;
}
void main ()
{
result student1;
student1.get_number(111);
student1.get_marks(75.0,59.5);
student1.display();
getch();
}
Output:
Roll number : 111
Marks in sub1 = 75
Marks in sub2 = 59.5
Total = 134.5








15. WAP in C++ to implement multiple inheritance.
#include<iostream.h>
#include<conio.h>
class M
{
protected:
int m ;
public:
void get_m(int);
};
class N
{
protected:
int n;
public:
void get_n(int);
};
class P : public M, public N
{
public:
void display(void);
};
void M :: get_m(int x)
{
m = x ;
}
void N :: get_n(int y)
{
n = y ;
}
void P :: display(void)
{
cout << "m = " << m << "\n" ;
cout << "n = " << n << "\n" ;
cout << "m * n = " << m*n << "\n" ;
}
void main ()
{
P p;
p.get_m(10);
p.get_n(20);
p.display();
getch();
}
Output:
m = 12
n = 3
m*n =36
16. WAP in C++ to implement hierarchical inheritance.
#include<iostream.h>
#include<conio.h>
class A
{
int a,b;
public :
void getdata()
{
cout << "\n Enter the value of a and b " ;
cin >> a >> b;
}
void putdata()
{
cout << "\n The value of a is : " << a << " and b is " << b;
}
};
class B : public A
{
int c , d;
public :
void indata()
{
cout << "\n Enter the value of c and d ";
cin >> c >> d;
}
void outdata()
{
cout << "\n The value of c " << c << " and d is " << d;
}
};
class C: public A
{
int e,f;
public :
void input()
{
cout<< "\n Enter the value of e and f ";
cin >> e >> f ;
}
void output()
{
cout << " \nthe value of e is " << e << " and f is " << f;
}

};
void main()
{
B obj1;
C obj2;
obj1.getdata();
obj1.indata();
obj2.getdata();
obj2.input();
obj1.putdata();
obj1.outdata();
obj2.output();
getch();
}
Output:
Enter the value of a and b 2 8
Enter the value of c and d 15 56
Enter the value of a and b 54 32
Enter the value of e and f 85 52
The value of a is : 2 and b is 8
The value of c is : 15 and d is 56
The value of e is : 85 and f is 52





17. WAP in C++ to implement hybrid inheritance.
#include<iostream.h>
#include<conio.h>
class student
{
protected:
int roll_number ;
public:
void get_number(int a)
{
roll_number = a ;
}
void put_number(void)
{
cout << "Roll no. : " << roll_number << "\n" ;
}
};
class test : public student
{
protected:
float part1, part2;
public:
void get_marks(float x, float y)
{
part1 = x ; part2 = y ;
}
void put_marks(void)
{
cout << "Marks obtained : " << "\n"
<< "part1 = " << part1 << "\n"
<< "part2 = " << part2 << "\n" ;
}
};
class sports
{
protected:
float score ;
public:
void get_score(float s)
{
score = s ;
}
void put_score(void)
{
cout << "Sports wt: " << score << "\n\n" ;
}
};
class result : public test, public sports
{
float total ;
public :
void display(void);
};
void result :: display(void)
{
total = part1 + part2 + score ;
put_number();
put_marks();
put_score();
cout << "Total score : " << total << "\n" ;
}

void main()
{
result student_1;
student_1.get_number(1234);
student_1.get_marks(27.5,33.0);
student_1.get_score(6.0);
student_1.display();
getch();
}

Output:
Roll no. : 1234
Marks obtained :
part1 = 27.5
part2 = 33
Sports wt: 6
Total score: 66.5


















18. WAP in C++ to implement virtual base class.
#include<iostream.h>
#include<conio.h>
class student
{
protected:
int roll_number;
public:
void get_number(int a)
{
roll_number = a;
}
void put_number(void)
{
cout << "Roll No: " << roll_number << "\n";
}
};
class test : virtual public student
{
protected:
float part1, part2;
public:
void get_marks(float x, float y)
{
part1 = x; part2 = y;
}
void put_marks(void)
{
cout << "Marks obtained: " << "\n"
<< "Part1 = " << part1 << "\n"
<< "Part2 = " << part2 << "\n";
}
};
class sports : public virtual student
{
protected:
float score ;
public:
void get_score(float s)
{
score = s;
}
void put_score(void)
{
cout << "Sports wt: " << score << "\n\n";
}
};
class result : public test, public sports
{
float total;
public:
void display(void)
{
total = part1 + part2 + score;
put_number();
put_marks();
put_score();
cout << "Total score: " << total << "\n";
}
};
void main()
{
result student_1;
student_1.get_number(678);
student_1.get_marks(30.5, 25.5);
student_1.get_score(7.0);
student_1.display();
getch();
}


Output:
Roll no. : 678
Marks obtained :
part1 = 38.5
part2 = 25.5
Sports wt: 7
Total score: 63


















19. Write a program to illustrate application of exception handling.
#include<iostream.h>
#include<conio.h>
void main()
{
int a,b;
cout << "Enter Values of a and b \n";
cin >> a;
cin >> b;
int x = a-b;
try
{
if(x != 0)
{
cout << "Result (a/x) = " << a/x << "\n";
}
else // There is an exception
{
throw(x) ; // Throws int object
}
}
catch (int i) // Catches the exception
{
cout<<"Exception cought: DIVIDE BY ZERO\N";
}
cout << "END";

getch();
}



















20. Write a program to copy the contents of one file to other.
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
#include<string.h>
#include<process.h>
void main()
{
fstream file1, file2;
char ch;
clrscr();
file1.open("file1.txt",ios :: out);
cout << "\n\t Press 'enter key' to quit \n\n";
cout << "\n Enter the data \n";
cin.get(ch);
while(ch != '\n')
{
file1.put(ch);
cin.get(ch);
}
file1.close();
file1.open("file1.txt",ios :: in);
if(!file1)
{
cout<< "\n File1 not found !! \n";
getch();
exit(0); // aborting
}
cout << "\n First file contents \n";
while(file1)
{
file1.get(ch);
cout.put(ch);
}
file1.seekg(0); /* copying process..... */
file2.open("file2.txt",ios :: out );
cout << "\n\n First file contents copied to second file... \n";
while(file1)
{
file1.get(ch);
file2.put(ch);
}
file1.seekg(0);
file2.close();
file2.open("file1.txt",ios :: in);
if(!file1)
{
cout<< "\n File1 not found !! \n";
getch();
exit(0); // aborting
}
cout << "\n Second file contents \n";
while(file2)
{
file2.get(ch);
cout.put(ch);
}
file2.close();
getch();
}











21. Write a program to read from two files simultaneously.
#include<fstream.h>
#include<conio.h>
#include<stdlib.h>
void main( )
{
clrscr();
const int SIZE = 80;
char line[SIZE];
//First creating two files
ofstream fout1,fout2;
fout1.open("country");
fout1<<"India\n";
fout1<<"Japan\n";
fout1<<"Sri Lanka\n";
fout1.close();
fout2.open("capital");
fout2<<"New Delhi\n"<<"Tokyo\n"<<"Colombo\n";
fout2.close();
ifstream fin1, fin2; // create two input streams
fin1.open("country");
fin2.open("capital");
cout<<"The contents of two files are given below:\n";
fin1.getline(line,80);
cout<<line<<"\n";
fin2.getline(line,80);
cout<<line<<"\n";
fin1.getline(line,80);
cout<<line<<"\n";
fin2.getline(line,80);
cout<<line<<"\n";
fin1.getline(line,80);
cout<<line<<"\n";
fin2.getline(line,80);
cout<<line<<"\n";
fin1.close();
fin2.close();
getch();
}
Output:
The contents of the two files are given below:
India
New Delhi
Japan
Tokyo
Sri Lanka
Colombo

You might also like