was muss ich jetzt also tun, damit die zahlen nicht so angezeigt werden?
Zur Darstellung von Geldbeträgen benutzt man üblicherweise keine Float-Zahlen (eben wegen der Nichtdarstellbarkeit von vielen Fließkommazahlen im Binärsystem, die du schon beobachtet hast).
Es gibt mehrere Wege, dieses Problem in den Griff zu bekommen. Am einfachsten in deinem Trivialbeispiel ist es wohl, mit Integers zu rechnen und die Einheit auf 1 Cent festzusetzen. "preis = 100;" wäre also 1 Euro.