Compléter PreTrajectoire.java, en suivant les instructions détaillées dans la méthode main :
Q1 : implementer : factorielle(int)
verifier : T.factorielle(0) == 1
verifier : T.factorielle(10) == 3628800
combien d’operations (multiplication d’entiers) sont effectuees par la methode factorielle(10) ?
combien d’operations (multiplication d’entiers) sont effectuees par la methode factorielle(j), j>1 ?
Q2 : implementer : sommeFactorielleNaif()
(T.I=10) verifier : T.sommeFactorielleNaif() == 4037914
combien d’operations (somme et multiplication d’entiers) sont effectuees par sommeFactorielleNaif() ?
Q3 : implementer : sommeFactorielle()
(T.I=10) verifier : T.sommeFactorielle() == 4037914
combien d’operations (somme et multiplication d’entiers) sont effectuees par sommeFactorielle() ?
poser I=100 dans le constructeur PreTrajectoire()
verifier : T.sommeFactorielle() == 1005876315485501978
expliquer pourquoi T.sommeFactorielleNaif() ne retourne pas ce resultat ?
facultatif : effectuer les modifications necessaires
Q4 : implementer : sommeExposant(double)
(T.I=100) verifier : T.sommeExposant(0) == 1
verifier : T.sommeExposant(1) == 101
verifier : T.sommeExposant(2) == 2.5353012004564588E30 > 2.1030
verifier : T.sommeExposant(10) == 1.1111111111111118E100 > 1.10100, expliquer ce chiffre 8 ?
calculer : T.sommeExposant(10000), interpreter
poser I=500 dans le constructeur PreTrajectoire()
noter que sommeExposant(10) n’est plus calculable ainsi
Q5 : implementer : sommeExposant()
(T.I=500, T.M={{1,0,0},{0,1,0},{0,0,1}}, la matrice identite de taille 3 : Id3)
verifier : T.sommeExposant() == 501.Id3
poser M={{0,1,0},{-50,0,50},{0,0,0}} dans initialiseMatrices()
calculer T.sommeExposant(), interpreter
poser M={{0,1,0},{0,0,0},{0,0,0}} dans initialiseMatrices()
verifier : T.sommeExposant() == Id3+M == {{1,1,0},{0,1,0},{0,0,1}}
Q6 : implementer : sommeExponentielle(double)
(T.I=500, T.M={{0,1,0},{0,0,0},{0,0,0}})
verifier : T.sommeExponentielle(0) == Id3
verifier : T.sommeExponentielle(2) == Id3 + 2.M
poser M=Id3 dans initialiseMatrices()
verifier : T.sommeExponentielle(0) == Id3
verifier : T.sommeExponentielle(2) == (7.389056098930649).Id3
Q7 : implementer : combinaisonMatrices(Matrice,Matrice,Matrice,Matrice,double)
declarer et initialiser une matrice 3x3 : B = Id3
declarer et initialiser une matrice 3x1 : C = {{1},{1},{1}}
verifier : T.combinaisonMatrices(B,C,C,C,2) == 4.C
verifier : T.combinaisonMatrices(B,C,C,C,0) == 2.C
Q8 : implementer : Y(double)
(T.I=500, T.M=Id3) verifier : T.Y(0) == combinaisonMatrices(B,C,C,C,0) == 2.C
verifier : T.Y(2) == (10.389056098930649).C
Q9 : implementer : ajouteSerie(TraceSeries) et traceCourbe()
afficher la courbe x(t)
Q10 : implementer : ajouteSerieTronquee(TraceSeries)
modifier traceCourbe() pour afficher la courbe tronquee
faire afficher tBarriere par ajouteSerieTronquee(TraceSeries)
modifier x(double) de sorte que x(t) == le premier element du vecteur Y(t) pour tout t
poser I=100, XBarriere=4.5, M={{0,1,0},{-50,0,50},{0,0,0}}
E2
EMN/CB1/integrateur/informatique2 -5- SD/2007-2008