Posez votre question Signaler

[string C++] ::>>> bien Relou [Fermé]

arno - Dernière réponse le 5 déc. 2006 à 10:21
oula tendu j'ai vraiment du mal a comprendre ton code il y a plein de truc que je ne connai pas j'en profite pour te mettre tout ce que j'avais fait:
class Vecteur{
  
 private:

  float x,y,z;
  
 public:

   //constructeur destructeur

  Vecteur(float,float,float);
  Vecteur();
  

  //methodes
  float getX();
  float getY();
  float getZ();
  float getNorme();
  string toString();
  float pScalaire(Vecteur);
  Vecteur pVectoriel(Vecteur);
};

Vecteur::Vecteur(float X,float Y,float Z){
  this->x=X;
  this->y=Y;
  this->z=Z;
}

Vecteur::Vecteur(){
  this->x=0;
  this->y=0;
  this->z=0;
}

//destructeur

//methodes
float Vecteur::getX(){
  return x;
}
float Vecteur::getY(){
  return y;
}
float Vecteur::getZ(){
  return z;
}
float Vecteur::getNorme(){
  return sqrt(pow(x,2)+pow(y,2)+pow(z,2));//inclure cmath
}
float Vecteur::pScalaire(Vecteur v){
  return (v.x*x + v.y*y + v.z*z);
}

Vecteur Vecteur::pVectoriel(Vecteur v){
  //effectue le produit vectoriel:  this^v
  Vecteur resultat(5,5,5);
   
  resultat.x = y * v.z - v.y * z;
  resultat.y = z * v.x - v.z * x;
  resultat.z = x * v.y - v.x * y;
  return resultat;
}


void Vecteur::toString(){
  cout << getX() <<";" << getY() << endl;
}

Je sais que c'est un peu abusé mais si tu pouvais m'expliquer tout ligne par ligne (ou presk) je te remercierais eternellement (oui tout ça)
Lire la suite 

[string C++] ::>>> bien Relou »

2 réponses
Réponse
+1
moins plus
Salut,

je ferme, vous irez voir dans le post initial...

Réponse
+0
moins plus
Effectivement c'est abusé car tu ouvres un nouveau post pour un problème en cours et qu'en plus il n'y a rien à expliquer. A part lire un tutoriel en C je ne sais pas quoi te dire...

Entre class et }; il déclare la classe Vecteur qui stocke trois flottants, et il déclare les méthode s'appliquant à une instance de Vecteur.

Ensuite il implémente les différentes méthodes.
Rq :
return (v.x*x + v.y*y + v.z*z);
return ( (v.x)*(this->x) + (v.y)*(this->y) + (v.z)*(this->z));

sont équivalentes.

Dans toString le cout devrait pour bien faire être remplacé par std::cout. Il écrit sur la sortie standard (std::cout) les valeurs retournées par getX et getY (à savoir this->x et this->y). Dans le feut de l'action il a même oublié z...

Bonne chance

Ce document intitulé « [string C++] ::>>> bien Relou » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook