short,float,double < Numerik < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 11:39 Mi 05.03.2008 | Autor: | bjoern.g |
hi kann mri jemand mal von dem jeweiligen typ
short , float , double
1. die kleinst mögliche positive zahl
2. die grösst mögliche negative zahl also so irgendwas (-0,000000000..) <- so ist das gemeint
ist wichtig bräuchte das für morgen !!!
vielen dank!
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 12:51 Mi 05.03.2008 | Autor: | nixwiss |
Hallo,
"short" ist ein integer-typ, also ein Datentyp für Ganze Zahlen (keine Kommazahlen). "short" benötigt 2 Byte.
Der Wertebereich geht von:
-32768 bis +32767
Die kleinste positive Zahl ist demnach die +1
Die größte negative Zahl ist die -1
"float" und "double" sind Datentypen für Kommazahlen (auch Gleitpunktzahlen genannt)
"float" ist 4 Byte groß, der Zahlenbereich geht von
[mm]3,4*10^{-38}[/mm] bis [mm]3,4*10^{+38}[/mm]
"double" ist 8 Byte groß, der Zahlenbereich geht von
[mm]1,7*10^{-308}[/mm] bis [mm]1,7*10^{+308}[/mm]
Bei den größten neg. Zahlen im Gleitkommaformat bin ich auch überfragt.
"float" hat 7 Stellen Genauigkeit demnach müsste die größte neg.
Zahl -0,0000001 sein.
"double" hat 15 Stellen Genauigkeit demnach müsste es die
-0,000000000000001 sein. Dies aber ohne Gewähr.
Die Datentypen können in den unterschiedlichen Programmiersprachen unterschiedlich sein.
Und Math. Coprozessoren haben z.T. auch eigene Datentypen (obwohl sie gleich heissen).
|
|
|
|
|
Hallo!
Wenn der Exponent doch mindestens -308 ist, dann ist die kleinste (positive) Zahl doch auch [mm] 1,7*10^{-308}. [/mm] Die Genauigkeit gibt dir nur an, wieviele Ziffern verarbeitet werden, aber nicht, daß davor noch 300 Nullen stehen.
Die von dir gegebenen Zahlenbereiche gelten genauso mit nem negativen Vorzeichen, demnach haben die Doubles eine Lücke in ihrem Geltungsbereich zwischen [mm] -1,7*10^{-308} [/mm] und [mm] +1,7*10^{-308}
[/mm]
|
|
|
|
|
> hi kann mri jemand mal von dem jeweiligen typ
>
> short , float , double
>
> 1. die kleinst mögliche positive zahl
> 2. die grösst mögliche negative zahl also so irgendwas
> (-0,000000000..) <- so ist das gemeint
>
>
> ist wichtig bräuchte das für morgen !!!
Falls Du dies für ein konkretes in C oder C++ geschriebenes Programm benötigst, solltest Du vermutlich Dein Programm so schreiben, dass es sich nicht auf eine hartcodierte Konstante sondern auf die in <climits>, <limits> bzw. <limits.h> <float.h> definierten symbolischen Konstanten stützt (Namen: siehe dort oder http://msdn2.microsoft.com/en-us/library/6bs3y5ya.aspx sowie http://msdn2.microsoft.com/en-us/library/296az74e.aspx)
|
|
|
|