Calcul du sinus à partir du développement limité?

cs_Jean Christophe Messages postés 1 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 13 avril 2004 - 13 avril 2004 à 14:04
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004 - 11 juin 2004 à 13:27
Bonjour,

je dois faire ceci:

->calcul du SINUS/COSINUS/EXPONENTIELLE d'un nombre à partir du développement limité et en choisissant le rang!!

Je ne vois pas comment faire!

merci de m'aider
A voir également:

12 réponses

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
13 avril 2004 à 14:15
Déjà, il faut partir de la définition :

sin (X) = somme ( (-1)^i(x^i)/i) i allant de 0 à N

Note : Les classes préparatoires sont loin, très loin pour moi maintenant. Si la formule est mauvaise, retenir le principe.

Function SinusDevLimite(X as Double, n As Long) As Double
Dim i As Long
Dim resultat As Double
resultat = 0.0
For i=0 to n
resultat = resultat + (-1)^i * (X^i)/i
Next i

SinusDevLimite = resultat
End Function

Manu
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
13 avril 2004 à 14:34
Version récursive :
Function SinusDevLimite(X as Double, n As Long) As Double
Dim i As Long
if n<>-1 then
  SinusDevLimite = (-1)^n * (X^n)/n + SinusDevLimite(X,n-1)
else
  SinusDevLimite = 0
EndIf
End Function

Christophe R.
0
Vb Lover Messages postés 221 Date d'inscription vendredi 30 novembre 2001 Statut Membre Dernière intervention 13 février 2010 5
13 avril 2004 à 19:25
La partie programmation a été répondue, place aux maths !
(elles ont été mises en mal dans les 2 réponses précédentes ...)

sin(x) = Somme_n (x^(2n+1) * (-1)^n / fact(2n+1))

la somme allant de n=0 à n=N.
fact est la fonction factorielle

de même :
cos(x) 1 - x^2 /2 + x^4 / 24 - ... Somme_n (x^(2n) * (-1)^n / fact(2n))
avec n=0 à n=N

et enfin, le plus facile :

exp(x) = Somme_n (x^n / fact(n))

VB Lover
0
Vb Lover Messages postés 221 Date d'inscription vendredi 30 novembre 2001 Statut Membre Dernière intervention 13 février 2010 5
13 avril 2004 à 19:45
je ne résiste pas à écrire le programme :)

Private Function Sinus(ByVal X As Double, ByVal N As Integer) As Double
Dim i As Integer
Dim Fact As Long
Dim Resultat As Double

    Resultat = 0
    Fact = 1
    For i = 1 To N
        Fact = Fact * i
        If i Mod 2 = 1 Then
            Resultat = Resultat + X ^ i / Fact
            Fact = -Fact
        End If
    Next
    Sinus = Resultat

End Function


il faut juste faire attention à Fact qui devient très grand très vite ! (-> mettre en Double)
VB Lover
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004
19 mai 2004 à 17:59
je suis desolé mais tout les code qui sont la je crois pas qu'il vont marcher parce que pour le cosinus et le sinus il faut prendre compte du module 2pi et faire une etude sur cet intervalle j'ai déja essayé de le programmer et des que tu depasse 2pi les resultat ne sont plus juste
0
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004
19 mai 2004 à 17:59
je suis desolé mais tout les code qui sont la je crois pas qu'il vont marcher parce que pour le cosinus et le sinus il faut prendre compte du module 2pi et faire une etude sur cet intervalle j'ai déja essayé de le programmer et des que tu depasse 2pi les resultat ne sont plus juste
0
Vb Lover Messages postés 221 Date d'inscription vendredi 30 novembre 2001 Statut Membre Dernière intervention 13 février 2010 5
20 mai 2004 à 18:26
Le code du sinus marche !!
La série du sinus converge pour tout nombre réel (en théorie)
La seule limitation ici, c'est la valeur de N. Pour faire converger la série du sinus, il suffit de prendre un plus grand N. Mais sinon, y'a vraiment rien de plus bête que de mettre en nombre entre 0 et 2*Pi !!!

VB Lover
0
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004
21 mai 2004 à 18:59
il serait plus judicieux de mettre une bouble avec un do while:
do while x>(2*Pi)
x=x-(2*Pi)
loop
si ta un code deja fé envoi le pour que je l'essaye parce que je trouve ca bizzare . :shock)
0
Vb Lover Messages postés 221 Date d'inscription vendredi 30 novembre 2001 Statut Membre Dernière intervention 13 février 2010 5
22 mai 2004 à 12:11
ce n'est pas la programmation la plus belle, mais enfin :

X = X - (X \ (2 * PI)) * (2 * PI)


VB Lover
0
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004
4 juin 2004 à 12:01
je viens de me rendre compte que c toi le mec du billard j'ai bien aimé la matrice aussi .je conseille a tout ceux qui vont recevoir ce msg d'aller voir le billard de vb lover .
0
Vb Lover Messages postés 221 Date d'inscription vendredi 30 novembre 2001 Statut Membre Dernière intervention 13 février 2010 5
4 juin 2004 à 21:28
Un fin limier ce taha154 !!
Je suis découvert, oulala !

ça fait chaud au coeur d'avoir un fan :)

VB Lover
0
taha154 Messages postés 9 Date d'inscription mercredi 19 mai 2004 Statut Membre Dernière intervention 11 juin 2004
11 juin 2004 à 13:27
oui biensur un peut de pub ca fé de mal a personne :-p
0
Rejoignez-nous