Bonjour à tous, J'ai reçu au lycée cet exercice... Je ne comprend pas bien ce qui ne joue pas dans mon code! Pouvez vous m'aider svp... Voila la donnée: Ecrire un programme qui, un nombre x étant donné, estime la somme infinie: 1-x/1 + x^2/(1∙2) - x^3/(1∙2∙3) + x^4/(1∙2∙3∙4)- … En cessant les calculs dès que le dernier terme additionné est inférieur à 10^(-10) Le programme affiche alors la somme obtenue… Exemple : Pour x = -2 Somme = 7.38905609…
Et moi j'ai ce code là:
Private Sub Command1_Click() x = Val(Text1.Text) s = 1 a = 0 m = 1 Do c = c + 1 m = m * c a = -((x ^ c) / (m)) s = s + a Loop Until Abs(a) < (10 ^ -10) Text2.Text = s End Sub
Malheureusement mon résultat quand je met x= -2 n'est pas égal à 7.3890... Mais à 1.864...
Marsh Posté le 18-01-2014 à 17:21:41
Bonjour à tous,
J'ai reçu au lycée cet exercice... Je ne comprend pas bien ce qui ne joue pas dans mon code! Pouvez vous m'aider svp... Voila la donnée:
Ecrire un programme qui, un nombre x étant donné, estime la somme infinie:
1-x/1 + x^2/(1∙2) - x^3/(1∙2∙3) + x^4/(1∙2∙3∙4)- …
En cessant les calculs dès que le dernier terme additionné est inférieur à 10^(-10)
Le programme affiche alors la somme obtenue… Exemple :
Pour x = -2 Somme = 7.38905609…
Et moi j'ai ce code là:
Private Sub Command1_Click()
x = Val(Text1.Text)
s = 1
a = 0
m = 1
Do
c = c + 1
m = m * c
a = -((x ^ c) / (m))
s = s + a
Loop Until Abs(a) < (10 ^ -10)
Text2.Text = s
End Sub
Malheureusement mon résultat quand je met x= -2 n'est pas égal à 7.3890... Mais à 1.864...
Merci de vos réponses!