Explanation of the reasons for rounding errors in floating-point math, and of rounding modes. Too many significant digits - The great advantage of floating point is that leading and trailing zeroes (within the range provided by the exponent) don't need to be stored. Integer Types (Exact Value) - INTEGER, **INT**, SMALLINT, TINYINT, MEDIUMINT, BIGINT. For **FLOAT** , the SQL standard permits an optional specification of the precision (but not the range of the MySQL performs rounding when storing values, so if you insert 999.00009 into a FLOAT(7,4) column.

**Rounds** a double-precision floating-point value to an integer using the specified rounding convention. Round(Double, Int32) ... 3.47500 is a midpoint value if it is to be rounded to two decimal places, and 7.500 is a midpoint value if it is to be rounded to an integer. In these cases, if the **round**-**to**-nearest strategy is used, the nearest value. **Floating**-point numbers are written with a decimal point separating the **integer** part and the fractional part. Here are some examples of **float** values- 1.23. 1.08, 45.60, 45.6123004, 1.23e5 (This represents scientific notation of **float** value where the decimal part is Mantissa and the exponential part(e) is Exponent). Python **Float** Type Example.

If the **round** method thinks it is receiving a **float**, it will return an **int**, so this works: **int** x = Math.**round** (2.6f); But if **round** thinks it's receiving a double it will return a long, so casting it to an **int** like this is necessary: **int** y = (**int**) Math.**round** (2.6); The first of these two examples works because I have explicitly given **round** a.