私は Ruby を初めて使用するので、最初に無知をお詫びします :) 顧客のアカウントを合計するときに問題が見つかりました。一部の金額は小数点以下の桁数がマイナスであり、これが合計を台無しにしています。ここにいくつかの簡単なコード例があります...
testnum = 0.00
puts "###Debug### testnum = #{testnum} (after 0.00)"
testnum += 5.00
puts "###Debug### testnum = #{testnum} (after 5.00)"
testnum += 3.33
puts "###Debug### testnum = #{testnum} (after 3.33)"
testnum += -1.00
puts "###Debug### testnum = #{testnum} (after -1.00)"
testnum += -2.22
puts "###Debug### testnum = #{testnum} (after -2.22)"
結果と...
###Debug### testnum = 0.0 (after 0.00)
###Debug### testnum = 5.0 (after 5.00)
###Debug### testnum = 8.33 (after 3.33)
###Debug### testnum = 7.33 (after -1.00)
###Debug### testnum = 5.109999999999999 (after -2.22)
したがって、-2.22 を追加すると testnum が破損しますが、-1.00 を追加しても問題ありませんでした。何が間違っているのかわかりません。