Tinderbox v9 Icon


Operator Type: 

Operator Scope of Action: 

Operator Purpose: 

Operator First Added: 

Operator Altered: 

 Function   [other Function type actions]

 Item   [operators of similar scope]

 Mathematical   [other Mathematical operators]




round() rounds the value of its number argument to the nearest integer.

The Number.format, Number.precision and format() functions all round numbers in this manner when shortening numbers during formatting. A partial integer over .50 always round up, everything else rounds down. Thus:

$MyNumber = round(4.0); gives 4

$MyNumber = round(4.2); gives 4

$MyNumber = round(4.5); gives 5

$MyNumber = round(4.7); gives 5

The round function with work on string literal or String attribute values that are just numbers:

$MyNumber = round("4.2"); gives 4

$MyNumber = round("4.7"); gives 5

$MyString = round(4.2); gives "4"

$MyString = round(4.7); gives "5"

$MyString = round("4.2"); gives "4"

$MyString = round("4.7"); gives "5"

There are no functions to always force a round down (floor) or up (ceiling), but these can be simulated with a bit of action code.

See also ceil() and floor().

For a practical example, assume you would like to round you calculation (upward) to the nearest 100, so if the calculation output is 167 it should be 200, for a result of 540 a result of 600, and so on. This can be done like so:

$MyNumber = 100*ceil($MyNumber/100); 

as if you used round(), as in:

$MyNumber = 100*ceil($MyNumber/100); 

the result would vary depending on whether $MyNumber started above or below the nearest 50. An opposite of the first example, i.e. where everything rounds downwards to the nearest 100 can be done using floor():

$MyNumber = 100*floor($MyNumber/100);