Probleme macro boucle While

juju782

XLDnaute Nouveau
Bonjour
j'ai un exo qui me pose probleme

On me demande ce qui est affiché par MsgBox lorsque
l'utilisateur rentre le nombre 1,5 pour la macro suivante


Sub essai()
Dim i as integer
Dim u as double
u=InputBox( "Entrez un nombre" )
i=5
While i>0
u=2*u-i
i=i-2
Wend
MsgBox (u)
End Sub

La reponse est -15 mais je ne comprend pas car
pour la derniere étape on trouve:

u=2.(-7)-1 = -15
et i=-1

or i<0 et ne respecte donc pas la condition, on ne devrait pas plutot prendre le u précedent ( a savoir u=-7) ?
 

pierrejean

XLDnaute Barbatruc
Re : Probleme macro boucle While

Re
Je me repete:

i est calculé apres u
lorsqu'il vaut -1 , il n'est plus utilisé
fait les calculs a la main sune feuille en suivant le processus pour t'en convaincre
La derniere valeur de i utilisée est 1
u=2*-7-1=-15
Si la valeur de i utilisée etait -1 on aurait
u=2*-7--1=-13
 

Statistiques des forums

Discussions
312 305
Messages
2 087 088
Membres
103 461
dernier inscrit
dams94