Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 30.06.2003, 17:11 Titel: 50/90 = 0.00000 ??????? |
|
|
ich hab jetzt schon tage lang an einer formel rumprobiert und war mir sicher das sie so stimmt doch mein computer hat immer etwas falsches ausgespuckt. ihrgendwann hab ich die formel "in stückchen" geteilt und dann gedebugt. und seit dem debuggen ist mir klar das die formel nicht funzt: also unter andrem ist ein teil der Formel "50 durch 90" das hab ich dann in eine variable gepackt und gedebugt. die zeile sieht so aus:
"float geteilt = 50/90;"
wenn ich dann debuge ist die variable im beoachtungsfenster erst
un-initsialisiert, dann nach dem befehl hat sie den wert"0.000000000000"(wieviele nullen weis ich nich). wenn ich das in meinem taschenrchner eintipp kommt "0,555555......6" raus . ich versteh die welt nich mehr
kann mir jemand helfen?????? |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 30.06.2003, 17:16 Titel: |
|
|
Du teilst zwei Integerwerte durcheinander.
50 / 90 = 0 (Rest 50). Also alles richtig.
Was du willst ist:
float f = 50.0f / 90
Christian |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 30.06.2003, 17:18 Titel: |
|
|
Zitat: |
"0.000000000000"(wieviele nullen weis ich nich)
|
LOL! Sorry. ;)
Probier mal
Code: |
float foo = 50. / 90.;
|
Wenn du die Punkte weglässt denkt der Compiler, dass du mit Intergern arbeitest, was natürlich falsch ist und zu Rundungsfehlern führt. ;)
[Edit]
Verdammt, Christian war schneller. ;) _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 30.06.2003, 17:28 Titel: |
|
|
danke für die schnellen antworten. jetzt teilt es "richtig" |
|
Nach oben |
|
|
|