mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-28 11:17:47 +00:00
59 lines
1.4 KiB
Text
59 lines
1.4 KiB
Text
The [[FIX]] function rounds a numerical value to the next whole number closest to zero.
|
|
|
|
|
|
{{PageSyntax}}
|
|
: {{Parameter|result}} = [[FIX]]({{Parameter|expression}})
|
|
|
|
|
|
{{PageParameters}}
|
|
* {{Parameter|expression}} is any [[Data types|type]] of literal or variable numerical value or mathematical calculation.
|
|
|
|
|
|
{{PageDescription}}
|
|
* [[FIX]] effectively truncates (removes) the fractional part of {{Parameter|expression}}, returning the integer part.
|
|
** This means that [[FIX]] rounds down for positive values and up for negative values.
|
|
* Use [[INT]] to round down negative values. Positive values are rounded down by both.
|
|
|
|
|
|
{{PageExamples}}
|
|
''Example 1:'' Showing the behavior of [[FIX]] with positive and negative decimal point values.
|
|
{{CodeStart}} '' ''
|
|
PRINT FIX(2.5)
|
|
PRINT FIX(-2.5) '' ''
|
|
{{CodeEnd}}
|
|
{{OutputStart}}2
|
|
-2
|
|
{{OutputEnd}}
|
|
|
|
|
|
''Example 2:'' The NORMAL arithmetic method (round half up) can be achieved using the function in the example code below:
|
|
{{CodeStart}} '' ''
|
|
{{Cl|PRINT}} MATHROUND(0.5)
|
|
{{Cl|PRINT}} MATHROUND(1.5)
|
|
{{Cl|PRINT}} MATHROUND(2.5)
|
|
{{Cl|PRINT}} MATHROUND(3.5)
|
|
{{Cl|PRINT}} MATHROUND(4.5)
|
|
{{Cl|PRINT}} MATHROUND(5.5)
|
|
|
|
{{Cl|FUNCTION}} MATHROUND(n)
|
|
MATHROUND = {{Cl|FIX}}(n + 0.5 * {{Cl|SGN}}(n))
|
|
{{Cl|END FUNCTION}} '' ''
|
|
{{CodeEnd}}
|
|
{{OutputStart}}1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
6
|
|
{{OutputEnd}}
|
|
|
|
|
|
{{PageSeeAlso}}
|
|
* [[_CEIL]]
|
|
* [[INT]], [[CINT]]
|
|
* [[CLNG]], [[_ROUND]]
|
|
* [[MOD]], [[\|Integer Division]]
|
|
* [[/|Normal division]]
|
|
|
|
|
|
{{PageNavigation}}
|