Floating point arithmetics leads to weird stuff like shopping lists requiring 0.49999999kg of something where it actually should be 0.5kg and so on. Fixed Point arithmetics would do away with that but naive implementations suffer from losing accuracy due to cutting of trailing digits. Figure out whether that is actually a problem and change the data type of ingredient amounts to something that allows for accurate (and human readable) numbers.
Floating point arithmetics leads to weird stuff like shopping lists requiring 0.49999999kg of something where it actually should be 0.5kg and so on. Fixed Point arithmetics would do away with that but naive implementations suffer from losing accuracy due to cutting of trailing digits. Figure out whether that is actually a problem and change the data type of ingredient amounts to something that allows for accurate (and human readable) numbers.