Exercice langage C corrigé la surcharge des opérateurs

#include <iostream.h>
class vecteur{
double x;
double y;
double z;
public:
vecteur(double x1=0, double y1=0, double z1=0); //ATTENTION;-)
friend vecteur operator*(vecteur v1, vecteur v2);
friend bool operator==(vecteur v1, vecteur v2);
friend ostream& operator<<(ostream& tmp,vecteur v);
friend istream& operator>>(istream& tmp,vecteur& v);
};
vecteur::vecteur(double x1, double y1, double z1){
x=x1;
y=y1;
z=z1;
}
vecteur operator*(vecteur v1, vecteur v2){
vecteur tmp;
tmp.x=v1.x*v2.x;
tmp.y=v1.y*v2.y;
tmp.z=v1.z*v2.y;
return tmp;
}
ostream& operator<<(ostream& tmp,vecteur v){
tmp<<"X = "<<v.x<<"Y = "<<v.y<<"Z = "<<v.z<<endl;
return tmp;
}
istream& operator>>(istream& tmp,vecteur& v){
cout<<" Entrez les valeurs de x,y et z"<<endl;
tmp>>v.x;
tmp>>v.y;
tmp>>v.z;
return tmp;
}
bool operator==(vecteur v1, vecteur v2){
if ((v1.x==v2.x)&&(v1.y==v2.y)&&(v1.z==v2.z)) return true;
else return false;
}
void main(){
vecteur a(2,3,4);
vecteur b(2.2,3.3,4);
vecteur c;
c=a*b;
vecteur d;
cin>>d;
cout<<d;
if (a==d) cout<<"valeurs identiques"<<endl;
else cout<<"valeurs différentes"<<endl;
}

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *