Bonjour,
je rencontre un petit problème, j'utilise des variables de types float dans mon programme, je les affiche sur un glcd lorsque j'affiche un menu de configuration, et je peux régler cette variable (coefficient) par le biais de 2 BPs. Mais l'incrémentation et la décrémentation ne se passe pas toujours bien...
Par exemple, j'ai une variable COEFT (float) qui peut varier de 0.05 à 0.95 et ça valeur initiale est 0.50:
Mais lorsque je souhaite la modifier par le biais de mes 2 BPs (+ / - 0.05 ):Code:float COEFT = 0.50
Elle est censé augmenter ou diminuer de 0.05, mais par exemple pour cette variable ci (car ça me le fais aussi sur d'autres variables de types float) et bien lorsque je décrémente de 0.05 ma variable COEFT alors qu'elle est égale a 0,85 (valeur affichée) elle passe à 0.79 et ensuite 0.74 ... avec toujours un décalage de 0.01...Code:if (RB0 == 0) { COEFT=COEFT-0.05; } if (RB2 == 0) { COEFT=COEFT+0.05; } if (COEFT >= 0.95) { COEFT = 0.95; } if (COEFT <=0.05) { COEFT = 0.05; }
D'ou cela peut il venir, et comment résoudre le problème?
J'espère que j'ai été assez clair dans mon explication, merci d'avance pour votre aide.
Bonne journée à tous
-----