[Gambas-user] Confusion in Data Types
KhurramM
kmsuse at ...626...
Mon Jun 8 12:50:04 CEST 2009
I am on ubuntu 9.04, x86, 32bit, gambas 2.12. I have some confusion regarding
the following:
----------------------------
PUBLIC SUB Main()
DIM myBoolean AS Boolean
DIM myByte AS Byte
DIM myShort AS Short
DIM N, myInteger AS Integer
DIM myLong AS Long
DIM mySingle AS Single
DIM myFloat AS Float
PRINT "RANGES"
myByte = 255
PRINT "Max value in Byte " & myByte
myByte += 1 ' Wraps OK; No BUG
PRINT "Min value in Byte " & myByte
' Short (2-Bytes) is 16 bit; 2^16=65536; half is 32768; ie -32768 to
32767
myShort = 32767
PRINT "Max value in Short " & myShort
myShort += 1 ' Wraps OK; No BUG
PRINT "Min value in Short " & myShort
' Integer (4-Bytes) 2^bits = 2^32 = 4294967296;
(4294967296/2=2147483648); -2147483648 to 2147483647
myInteger = 2147483647
PRINT "Max value in Integer " & myInteger
myInteger += 1 ' Wraps OK; No BUG
PRINT "Min value in Integer " & myInteger
' Long (8-Bytes) 2^bits = 2^64; -9223372036854775808 to
9223372036854775807
myLong = 9223372036854775807
PRINT "Max value in Long " & myLong
myLong += 1 ' Wraps OK; No BUG
PRINT "Min value in Long " & myLong
' Single (4-Byte C Float) 1.2e-38 to 3.4e38
mySingle = 3.4e+38
PRINT "Max value in Single " & mySingle
mySingle += 1 '1e+36 ' Issues
PRINT "Min value in Single " & mySingle
' Float (4-Byte C Double) 2.2e-308 to 1.8e308
'myFloat = 1.8e+308 BUG: Cant hold this value
myFloat = 1.79e+308
PRINT "Max value in Float " & myFloat
myFloat += 1 ' BUG: DoesNOT Wrap
PRINT "Min value in Float " & myFloat
END
----------------------------
Program Output:
----------------------------
RANGES
Max value in Byte 255
Min value in Byte 0
Max value in Short 32767
Min value in Short -32768
Max value in Integer 2147483647
Min value in Integer -2147483648
Max value in Long 9223372036854775807
Min value in Long -9223372036854775808
Max value in Single 3.399999952144E+38
Min value in Single 3.399999952144E+38
Max value in Float 1.79E+308
Min value in Float 1E+2147483647
----------------------------
I have issue in Single and Float:
1. How to overflow the Single and Float?
2. Why does the Float not accept the highest value?
Thanks in advance. :working:
--
View this message in context: http://www.nabble.com/Confusion-in-Data-Types-tp23921847p23921847.html
Sent from the gambas-user mailing list archive at Nabble.com.
More information about the User
mailing list