Absence d'erreur déroutante avec StrToFloat
Je sais, ça doit paraître bizarre de voir quelqu'un se plaindre du fait qu'il n'a pas d'erreur, mais pour le coup j'avoue ne pas vraiment comprendre.
J'ai une Form avec deux EditBox appelées expa et expb
L'utilisateur doit rentrer dans ces Box les valeurs de a et b qui sont les coefficients de l'equation suivante: a*exp(bx).
Lorsqu'il valide sa saisie, j'affiche l'expression de la fonction dans un label.
Voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| begin
expP.Hide;
if ((expa.Text='') or(StrToFloat(expa.Text)=0)) then
functionL.Caption:='Y(X)=0'
else
begin
if ((expb.Text='') or (StrToFloat(expb.Text)=0)) then
functionL.Caption:='Y(X)= '+ expa.Text
else
functionL.Caption:='Y(X)= '+ expa.Text+ ' exp( '+expb.Text+' X)';
end;
end; |
Le problème, c'est que d'habitude j'ai une erreur quand je fais StrToFloat sur une string vide (' ' is not a valid float number), or là je n'ai pas cette erreur, et je me demande pourquoi c'est le cas?
Est-ce qu'il saute automatiquement le second test boolean quand le premier est vrai ?