Ik zit met een vaag probleem omtrent de berekening van een aantal double values.
Voor een bepaalde berekening, die uitgevoerd wordt, kan een gebruiker een aantal waarden opgeven die de berekening kan beïnvloeden (zoals bvb 'aantal'). Ook kunnen er overige kosten rechtstreeks ingegeven worden. Hier werd het probleem opgemerkt.
Bij een ingave van:
worden de resultaten dus foutief berekend. Dit is natuurlijk een vrij lastig probleem, aangezien het hier over bedragen en prijzen gaat.
Natuurlijk weet ik dat double/float benaderingen zijn en dus 64.18 intern gerepresenteerd kan worden als 64.179999..
Ik zou dit probleem echter wel op een deftige manier willen oplossen. Wat is een goede manier om dit probleem af te wenden?
Voor een bepaalde berekening, die uitgevoerd wordt, kan een gebruiker een aantal waarden opgeven die de berekening kan beïnvloeden (zoals bvb 'aantal'). Ook kunnen er overige kosten rechtstreeks ingegeven worden. Hier werd het probleem opgemerkt.
Bij een ingave van:
code:
1
2
3
4
| 64.11 wordt 64.11 64.12 wordt 64.13 ... 64.17 wordt 64.18 |
worden de resultaten dus foutief berekend. Dit is natuurlijk een vrij lastig probleem, aangezien het hier over bedragen en prijzen gaat.
Natuurlijk weet ik dat double/float benaderingen zijn en dus 64.18 intern gerepresenteerd kan worden als 64.179999..
Ik zou dit probleem echter wel op een deftige manier willen oplossen. Wat is een goede manier om dit probleem af te wenden?