Thursday, October 28, 2010

Abstract Class Solid

#include

#include

class solid

{

public:

virtual void volume()=0;

};

class cone : public solid

{

int a,r,h;

public:

void volume()

{

cout<<"\n enter radius and height";

cin>>r>>h;

a=(1*3.14*r*r*h)/3;

cout<<"\n volume of cone is :"<

}

};

class cylender : public solid

{

int a1,r1,h1;

public:

void volume()

{

cout<<"\n enter radius and height";

cin>>r1>>h1;

a1=3.14*r1*r1*h1;

cout<<"\n volume of cylender"<

}

};

class sphere : public solid

{

int a2,r2;

public:

void volume()

{

cout<<"\n enter radius";

cin>>r2;

a2=(4/3)*3.14*r2*r2;

cout<<"\n volume of sphere"<

}

};

void main()

{

clrscr();

solid *sptr;

cone c;

cylender cy;

sphere s;

sptr=&c;

sptr->volume();

sptr=&cy;

sptr->volume();

sptr=&s;

sptr->volume();

getch();

}

OUTPUT

Enter radius and height 5

6

Eolume of cone is :157

Enter radius and height 4

5

Volume of cylender251

Enter radius 5

Volume of sphere78

Binary Operation Overloading

#include

#include

class complex

{

float x,y;

public:

complex()

{

x=0;y=0;

}

complex(float real,float imag)

{

x=real;y=imag;

}

complex operator +(complex);

complex operator -(complex);

complex operator *(complex);

void display();

};

complex complex::operator +(complex c)

{

complex t;

t.x=x+c.x;

t.y=y+c.y;

return t;

}

complex complex::operator -(complex c)

{

complex t;

t.x=x-c.x;

t.y=y-c.y;

return t;

}

complex complex::operator *(complex c)

{

complex t;

t.x=(x*c.x)-(y*c.y);

t.y=(x*c.y)+(y*c.x);

return t;

}

void complex::display()

{

cout<

}

void main()

{

clrscr();

complex c1,c2,c3;

c1=complex(2.5,3.5);

c2=complex(1.6,2.7);

cout<<"c1=";

c1.display();

cout<<"c2=";

c2.display();

c3=c1+c2;

cout<<"Add";

c3.display();

c3=c1-c2;

cout<<"Subtract";

c3.display();

c3=c1*c2;

cout<<"Multiply";

c3=c1*c2;

c3.display();

getch();

}

OUTPUT

c1=2.5+i3.5

c2=1.6+i2.7

Add4.1+i6.2

Subtract0.9+i0.8

Multiply-5.45+i12.35

Uniary Operation Overloading

#include

#include

class complex

{

float x,y;

public:

complex()

{

x=0;

y=0;

}

complex(float real,float imag)

{

x=real;

y=imag;

}

complex operator +(complex);

void display();

};

complex complex::operator +(complex c)

{

complex t;

t.x=x+c.x;

t.y=y+c.y;

return (t);

}

void complex :: display()

{

cout<

}

void main()

{

clrscr();

complex c1,c2,c3;

c1=complex(2.5,3.5);

c2=complex(1.6,2.7);

c3=c1+c2;

cout<<" c1=";

c1.display();

cout<<" c2=";

c2.display();

cout<<" c3=";

c3.display();

getch();

}

OUTPUT

c1=2.5+i3.5

c2=1.6+i2.7

c3=4.1+i6.2

New & Delete Operation

#include

#include

void addvector(int *a,int *b,int *c,int size)

{

for(int i=0;i

c[i]=a[i]+b[i];

}

void readvector(int *vector,int size)

{

for(int i=0;i

cin>>vector[i];

}

void showvector(int *vector,int size)

{

for(int i=0;i

cout<<"\t\n"<

}

void main()

{

clrscr();

int vec_size;

int *x,*y,*z;

cout<<"Enter vector size";

cin>>vec_size;

x=new int[vec_size];

y=new int[vec_size];

z=new int[vec_size];

cout<<"Enter element of vector";

readvector(x,vec_size);

cout<<"Enter element of vector";

readvector(y,vec_size);

addvector(x,y,z,vec_size);

cout<<"z=x+y";

showvector(z,vec_size);

delete x;

delete y;

delete z;

getch();

}

OUTPUT

Enter vector size 3

Enter element of vector 4

6

7

Enter element of vector 8

7

2

z=x+y

12

13

9

This Pointer

#include

#include

#include

class person

{

char name[20];

float age;

public:

person(char *s,float a)

{

strcpy(name,s);

age=a;

}

person & person::greater(person & x)

{

if(x.age>=age)

return x;

else

return *this;

}

void display()

{

cout<<"\nName:"<

cout<<"age:"<

}

};

void main()

{

clrscr();

person p1("D",12);

person p2("B",20);

person p3("C",34);

person p=p1.greater(p2);

p=p.greater(p3);

cout<<"\nElder person";

p.display();

getch();

}

OUTPUT

Elder person

Name:C

age:34

Derived Class Pointer

#include

#include

class BC

{

public:

int b;

void show()

{

cout<<"\nb="<

}};

class DC:public BC

{

public:

int d;

void show()

{

cout<<"\nb="<

cout<<"\nd="<

}};

void main()

{

clrscr();

BC *bptr;

BC base;

bptr=&base;

bptr->b=100;

bptr->show();

DC derived;

bptr=&derived;

bptr->b=200;

bptr->show();

DC *dptr;

dptr=&derived;

dptr->d=300;

dptr->show();

dptr->d=400;

((DC *)bptr)->d=500;

((DC *)bptr)->show();

cout<<"\n(DC *)bptr->show()";

getch();

}

OUTPUT

b=100

b=200

b=200

d=300

b=200

d=500

(DC *)bptr->show()

Bank Interest Calculation

#include

#include

#include

class bank

{

char name[20];

int accno;

public:

void getdata()

{

cout<<"\nEnter Your Name";

cin>>name;

cout<<"\nEnter Your Acount No.";

cin>>accno;

}

void putdata()

{

cout<<"\nName:"<

cout<<"\nAccount No.:"<

}

};

class sa:public bank

{

long int p,r,t;

long int si;

public:

void getsi()

{

cout<<"\nEnter the Balance";

cin>>p;

r=5;t=2;

si=(p*r*t)/100;

}

void putsi()

{

cout<<"\nInterest:"<

cout<<"\nBalance:"<

}

};

class ca:public bank

{

long int pr,ra,ti,a;

long int ci;

public:

void getci()

{

cout<<"\nEnter The Balance:";

cin>>pr;

ra=5;

ti=2;

a=(100+ra)/100;

ci=pr*pow(a,ti);

}

void putci()

{

cout<<"\nInterest:"<

cout<<"\nBalance:"<

}

};

void main()

{

clrscr();

sa a;

ca b;

cout<<"\n......ENTER YOUR CHOICE.......";

cout<<"\n1.Saving A\c";

cout<<"\n2.Current A\c";

int ch;

cin>>ch;

switch(ch)

{

case 1:

a.getdata();

a.getsi();

a.putdata();

a.putsi();

break;

case 2:

b.getdata();

b.getci();

b.putdata();

b.putci();

break;

default:

cout<<"......INVALID......";

break;

}

getch();

}

OUTPUT

......ENTER YOUR CHOICE.......

1.Saving Ac

2.Current Ac

1

Enter Your NameANKIT

Enter Your Acount No.5

Enter the Balance50000

Name:ANKIT

Account No.:5

Interest:5000

Balance:55000