Bonjour,
Je ne comprends pas le résultat du simple calcul suivant :
En effet je me retrouve avec CalculatedFactor qui vaut 1.0999999999999999 au lieu de 1.1. Et ce n'est pas juste un visuel car le booléen (CalculatedFactor == 1.1) vaut false
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 double? OriginalFactor = null; double CalculatedFactor = 0; double? Adjustment = null; Calculate(out double? OriginalFactor, out Adjustment, out CalculatedFactor); ... private void CalculateFactor(out double OriginalFactor, out double? Adjustment, out double CalculatedFactor) { Adjustment = null; OriginalFactor = null; CalculatedFactor = 0; if(true) { OriginalFactor = 1.2; Adjustment = -0.1; } CalculatedFactor = (OriginalFactor.HasValue ? OriginalFactor.Value : 0) + (Adjustment.HasValue ? Adjustment.Value : 0) }
Partager