Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Aim: To implement a program to add two polar coordinates using operator overloading.
Code:
#define PI 3.14
class polar
{
double theta;
double r;
public:
void getdata();
void display();
double convert(double);
double revert(double);
polar operator+(polar p2);
};
void polar::display()
double t;
cout< } double polar::convert(double t) { double x; x=(PI/180)*t; return(x); } double polar::revert(double t) { double x; x=(180*t)/PI; return (x); } void polar::getdata() { double t; cout<<"Enter value of 'r':"; cin>>r; cout<<"Enter value of 'é':"; cin>>theta; } polar polar::operator+(polar p2) { polar p3; double x,y,t1,t2,t; t1=convert(theta); t2=convert(p2.theta); x=(r*cos(t1))+(p2.r*(cos(t2))); y=(r*sin(t1))+(p2.r*(sin(t2))); t=atan(y/x); p3.theta=revert(t); p3.r=sqrt((x*x)+(y*y)); return(p3); } void main() { polar p1,p2,p3; clrscr(); p1.getdata(); p2.getdata(); cout< p1.display(); cout<<"\nB:"; p2.display(); p3=p1+p2; cout<<"\n\nAfter addition:\n\nA + B = "; p3.display(); getch(); } Output: Enter value of 'r':1 Enter value of 'Θ':45 Enter value of 'r':1 Enter value of 'Θ':45 A:1 cos 45° + 1 sin 45° B:1 cos 45° + 1 sin 45° After addition: A + B = 2 cos 45° + 2 sin 45°
}
double polar::convert(double t)
double x;
x=(PI/180)*t;
return(x);
double polar::revert(double t)
x=(180*t)/PI;
return (x);
void polar::getdata()
cout<<"Enter value of 'r':";
cin>>r;
cout<<"Enter value of 'é':";
cin>>theta;
polar polar::operator+(polar p2)
polar p3;
double x,y,t1,t2,t;
t1=convert(theta);
t2=convert(p2.theta);
x=(r*cos(t1))+(p2.r*(cos(t2)));
y=(r*sin(t1))+(p2.r*(sin(t2)));
t=atan(y/x);
p3.theta=revert(t);
p3.r=sqrt((x*x)+(y*y));
return(p3);
void main()
polar p1,p2,p3;
clrscr();
p1.getdata();
p2.getdata();
cout< p1.display(); cout<<"\nB:"; p2.display(); p3=p1+p2; cout<<"\n\nAfter addition:\n\nA + B = "; p3.display(); getch(); } Output: Enter value of 'r':1 Enter value of 'Θ':45 Enter value of 'r':1 Enter value of 'Θ':45 A:1 cos 45° + 1 sin 45° B:1 cos 45° + 1 sin 45° After addition: A + B = 2 cos 45° + 2 sin 45°
p1.display();
cout<<"\nB:";
p2.display();
p3=p1+p2;
cout<<"\n\nAfter addition:\n\nA + B = ";
p3.display();
getch();
Output:
Enter value of 'r':1
Enter value of 'Θ':45
A:1 cos 45° + 1 sin 45°
B:1 cos 45° + 1 sin 45°
After addition:
A + B = 2 cos 45° + 2 sin 45°
F u nction overloading: Functions can be defined with same name. Depending upon the type of argument passed the function will perform. This is known function overloading
Optimize and Profile a C++ library for speed Project Description: Optimize and Profile an existing C++ library for speed. This library uses OpenMP and OpenCV and C++ stan
Explain multi dimensional array with example.
store the name of the political parties and the corresponding votes in two lists of equal length. access the lists is provided by two methods, each of which creates an interator th
Pointers to Objects Passing and returning of objects is, though, not very efficient since it includes passing and returning a copy of the data members. This problem can be elim
Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4
C Program for DIVISER void main() { int result,number,min; clrscr(); printf("ENTER THE NUMBER="); flushall();
Illustration of Grid function: For illustration, the script below creates two individual figure windows. At First, it clears the figure window. Then, it generates an x vector
Use of random function: int main(void) { int i,j; for(j=0;j { // randomize(); for(i=0;i printf("%d\n", ran
You are working for a computer gaming company and have been asked to look at a survival game. You will be simulating a rabbit stranded on an island, collecting a large number of s
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd