Calcul d'une nouvelle valeur bloquée à la valeur initiale
Bonjour à tous,
Je fais appel à une fonction qui doit me calculer la nouvelle position d'un mobile en fonction du temps initial et de la vitesse initiale. Pour cela, j'ai crée une classe T et une instance de cette classe T1.
Dans cette classe, j'ai défini la méthode frein qui prend en entrée 2 variable : le temps initial et la vitesse initiale. Cette méthode (ou fonction membre) doit me donnée la nouvelle valeur de l'attribut Position.
Or je constate que la Position reste bloquée à la valeur initiale ....
Voici des extraits de code...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| class T
{
public:
T();
T(double pos);
T(double pos, double circul, double accel, double frein);
double frein(int t1, double v);
//Accesseur
double const GetPosition();
double const GetVitesse();
//Mutateur
void SetPosition(double pos);
private:
double Position;
}; |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#include <iostream>
#include "T.h"
int DeltaT=1;
//T::T(){Position=0;}
T::T(double pos): Position(pos){}
T::T(double pos, double circul, double accel, double frein): Position(pos), v_circul(circul), a_accel(accel) , a_frein(frein){}
//double const T::GetVitesse(){return Vitesse;}
double const T::GetPosition(){return Position;}
void T::SetPosition(double pos){Position=pos;}
double T::circul(){Position=Position+DeltaT*v_circul*1000/3600;}
double T::frein(int tt1, double vv){Position=Position+0,5*(-1)*(2*tt1+1)*1+vv*1000/3600*1;} |
main()
Code:
1 2 3 4
|
V1=V1-DeltaT*0.001*3600 ;
std::cout <<T1.frein(t1,V1) << std::endl; |