Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Dominik
Anmeldungsdatum: 22.12.2004 Beiträge: 172
|
Verfasst am: 23.05.2005, 14:50 Titel: Rechenfehler?! |
|
|
Hallo,
wenn ich folgendes in PDS eingebe:
DO
PRINT ZAHL
ZAHL = ZAHL + 0.1
LOOP
gibt er mir schon nach kurzer Zeit als ZAHL eine Zahl mit mehreren Nachkommastellen. Wie kann das sein? Wie kann ich diesen Fehler beheben?
Gruß
Dominik |
|
Nach oben |
|
 |
Jan

Anmeldungsdatum: 04.01.2005 Beiträge: 74
|
Verfasst am: 23.05.2005, 15:25 Titel: |
|
|
ich denke mal das wird dann ne sehr hohe zahl sein, wo, wie beim taschenrechner, einfach so etwas entsteht:
Zitat: | 1,024758325 * 10^12 |
das heißt dann, das du das komma um 12 stellen nach rechts verschieben musst.
so ist das denke ich mal. [/quote] |
|
Nach oben |
|
 |
Mecki Igel

Anmeldungsdatum: 10.09.2004 Beiträge: 985 Wohnort: Niederbayern
|
Verfasst am: 23.05.2005, 15:28 Titel: |
|
|
..und ich denke anders: Das liegt wohl daran, dass Zahlen wie 0.2 einem unendlichen Dualbruch entsprechen, der PC aber nur endlich viele Stellen berechnen kann. Daher kann 0.2 nicht exakt, sondern nur gerundet gespeichert werden.
Die Rundungsfehler addieren sich und verfälschen das Ergebnis.
So stehts zumindest Mathebuch
Den Fehler behebst du, indem du das Problem umgehst, z.B. durch verwenden von ZAHL=ZAHL+1 und beim Print dann ZAHL/10 und so weiter und so weiter  _________________ » Yodl.de: So sucht man gestern.
» Geld verdienen im Netz + ICQ.
» Firefox!
» 100€ zu gewinnen
» FreeBASIC.de |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 23.05.2005, 16:07 Titel: |
|
|
Oder du schreibst bei PRINT Folgendes:
Code: |
PRINT " Wert der Zahl: "; USING "##.##"; ZAHL
|
jb |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
|
Nach oben |
|
 |
|