floatproblem

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • tag.
    ich bin zurzeit dabei aus einer tankstelle ein biz zu machen. und jetzt möchte ich den kaufpreis eines produktes in einem dialog inputtext angeben können.
    aber ich möchte nicht nur 1,2,3 € einstellen können sondern auch centbeträge. doch wenn ich jetzt z.b. "3.50" eingebe wird der wert als "3.499999" ausgegeben.
    weiß zufällig jemand woran das liegen könnte oder wie man das beheben soll?
    ich denke mal wenn ich es als string abspeichern würde könnte es klappen.. aber meine frage ist trotzdem noch warum samp -0.000001 macht bei jedem float?


    case DIALOG_BPRODUKTPREIS:
    {
    if(response==1)
    {
    if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_BPRODUKTPREIS,DIALOG_STYLE_INPUT,"Produktpreis:","Wieviel soll ein Produkt deines Biz kosten?","Weiter","Abbrechen");
    bizenum[tankstellebhf][Produktpreis]=floatstr(inputtext);
    format(stringbert,sizeof(stringbert),"Du hast den Produktpreis deines Biz auf %.2f € eingestellt!",floatstr(inputtext));normalmsg(playerid,stringbert);
    }
    }

  • erstmal danke an euch für die antworten.. find ich ja schon komisch :D
    habe es jetzt einfach mal probiert +0.000001 dazuzurechenen und das scheint ganz gut zu klappen ^^
    jetzt kommt das richtige ergebniss raus..


    bizenum[tankstellebhf][Produktpreis]=(floatstr(inputtext)+0.000001);