Vorteil/Nachteil Ganze Zahlen, Gleitkommazahlen
-
Hi,
wir sollen für die Schule die Vor-und Nachteile von Ganze Zahlen, Gleitkommazahlen
beschreiben.Jedoch fällt mir nichts weiter ein, als das Gleitkommazahlen genauer sind als Ganze Zahlen, vielleicht könnt ihr mir ja noch ein paar Anregungen geben.
Wäre sehr erfreut darüber,
Mfg Shrek2k1
-
gleitkommazahlen müssen nicht genauer sein. ints sind auf genau den 1er genau, haben aber einen kleineren wertebereich. float dageben kann bestimmte zahlen nicht darstellen (glaub zB kann double kein 4.0 sondern macht 3.99999999999 draus).
-
Shrek2k1 schrieb:
Jedoch fällt mir nichts weiter ein, als das Gleitkommazahlen genauer sind als Ganze Zahlen...
nö, gleitkomma ist sogar viel ungenauer. z.b. fasst ein 32bittiger int 2^32 verschiedene zahlen. mehr geht einfach nicht. ein float (ebenfalls 32 bittig) versucht werte im bereich von etwa 1.2*10^-38 ... 3.4*10^38 in 32 bits zu quetschen. dass dabei einige lücken entstehen, ist wohl verständlich.
-
Integer sind immer exakt. Und deshalb immer zu bevorzugen.
Float's gaukeln Dir - laienhaft gesprochen - nen stetigen Wertebereich vor, der aber in Wirklichkeit auch diskret ist. Daraus folgt, dass floats ungenau sind. Je größer die floats werden, desto ungenauer werden sie.Der Wertebereich ist bei allen Zahlendarstellungen (in einem herkömmlichen Computer) immer begrenzt, da nunmal nicht unendlichviel Speicher zur Verfügung steht.
-
Alles klar, dankeschön an alle
-
Maxi schrieb:
(glaub zB kann double kein 4.0 sondern macht 3.99999999999 draus).
Der Vollständigkeit halber muss an dieser Stelle gesagt werden, dass 4.0 natürlich exakt darstellbar ist, sowohl in double als auch in float. Nicht darstellbar sind z.B. Zahlen, die keine ganzzahligen Vielfachen von Zweierpotenzen sind, wie 0.1
-
google mal nach "IEEE 754". Das ist der Standart, nachdem oft Gletkommazahlen in Programmiersprachen implementiert werden.
-
Integer sind immer exakt. Und deshalb immer zu bevorzugen.
Zweiteres gilt vielleicht in der Modulo-Welt mit Plus, Minus und Mal.
Spätestens bei der Division, sqrt, exp, sin, cos, log, ... und fast jeder Art von realistischer, numerischer Berechnung, Transformation, Approximation wirst Du mit Integerzahlen nicht sehr weit kommen.Für die Schule reicht vielleicht schon aus:
- Ganze Zahlen sind im Gegensatz zu Gleitkommazahlen äquidistant auf dem Zahlenstrahl verteilt
- Multiplikation und Addition sind für ganze Zahlen schneller auf einem Rechner durchführbar
- Gleitkommazahlen werden durch Vorzeichenbit, Mantisse und Exponent dargestellt, ganze Zahlen durch 2er-Komplement
- Addition und Multiplikation sind für ganze Zahlen exakt, Division nicht; Gleitkommazahlen liefern bei der Division wesentlich bessere Approximationen des Ergebnisses
- Für die Berechnung von Funktionen, Lösen von Gleichungen, Darstellung von Naturkonstanten wie Pi und e eignen sich Gleitkommazahlen besser
Alle Aussagen gelten natürlich nur "in der Regel", Ausnahmen werden dies nur bestätigen