Max: eval()-Fehler

hi! ich habe ein problem: und zwar kommt jedesmal, wenn ich die funktion ausführe und bei geld 1 eingebe und der preis 0.90 EUR beträgt 0.966666666666668 und nicht 0.1 heraus! Warum? Ist mein Browser kapuut?

[code]
 if(geld != "5" && geld != "2" && geld != "1") {
  alert(fehler); }

else {
  if(geld == "5") {
   alert("Die Geldrückgabe ist defekt!"); }

else {
   if(getraenk == "C") {
    preis = 1;
    alert("Der Preis beträgt " + preis + " EUR"); }

else if(getraenk == "S") {
    preis = 0.80;
    alert("Der Preis beträgt " + preis + " EUR"); }

else {
    preis = 0.90;
    alert("Der Preis beträgt " + preis + " EUR"); }

rueckgeld = eval(geld - preis);
    alert("Sie bekommen " + rueckgeld + " EUR Rückgeld");
  }
 }
[code]

  1. Hallo Max

    hi! ich habe ein problem: und zwar kommt jedesmal, wenn ich die funktion ausführe und bei geld 1 eingebe und der preis 0.90 EUR beträgt 0.966666666666668 und nicht 0.1 heraus! Warum? Ist mein Browser kapuut?

    Nein. http://www.dcljs.de/faq/antwort.php?Antwort=rechnen_rechnen

    Aber dieses eval ist überflüssig:

    rueckgeld = eval(geld - preis);

    Es reicht:
    rueckgeld = geld - preis;

    Struppi.