Difference between revisions of "LlRound"

From Second Life Wiki
Jump to navigation Jump to search
(Undo revision 1187125 un-necessary editing destroying the chosen style of valid original example)
(comment on anomalous result)
Line 12: Line 12:
{
{
   state_entry()
   state_entry()
   {
   {
      llSay(0,"The rounded value of -4.5 is: "+(string)llRound(-4.5) );
      //Returns "The rounded value of -4.5 is: -4"
     
       llSay(0,"The rounded value of -4.9 is: "+(string)llRound(-4.9) );
       llSay(0,"The rounded value of -4.9 is: "+(string)llRound(-4.9) );
       //Returns "The rounded value of -4.9 is: -5"
       //Returns "The rounded value of -4.9 is: -5"
Line 30: Line 27:
       llSay(0,"The rounded value of 4.1 is: "+(string)llRound(4.1) );
       llSay(0,"The rounded value of 4.1 is: "+(string)llRound(4.1) );
       //Returns "The rounded value of 4.1 is: 4"
       //Returns "The rounded value of 4.1 is: 4"
      llSay(0,"The rounded value of -4.5 is: "+(string)llRound(-4.5) );
      //Returns "The rounded value of -4.5 is: -4"
      // Note: the above result not -5 as would be expected, due to the inaccuracy involved in storing -4.5 as a float
     }
     }
}</lsl>
}</lsl>

Revision as of 09:16, 21 January 2014

Summary

Function: integer llRound( float val );
0.0 Forced Delay
10.0 Energy

Returns the integer that val is closest to.

• float val Any valid float value

If the absolute value of the tenths position is 4 or less, val is rounded off; otherwise, val is rounded towards infinity of like signedness of val.

Caveats

The function returns -2147483648 (0x80000000) if the nearest integer value to the input would be outside of the range of valid integers (-2147483648 to 2147483647)

Examples

<lsl>default {

  state_entry()
  {  
      llSay(0,"The rounded value of -4.9 is: "+(string)llRound(-4.9) );
      //Returns "The rounded value of -4.9 is: -5"
      
      llSay(0,"The rounded value of -4.1 is: "+(string)llRound(-4.1) );
      //Returns "The rounded value of -4.1 is: -4"
      
      llSay(0,"The rounded value of 4.5 is: "+(string)llRound(4.5) );
      //Returns "The rounded value of 4.5 is: 5"
      
      llSay(0,"The rounded value of 4.9 is: "+(string)llRound(4.9) );
      //Returns "The rounded value of 4.9 is: 5"
      
      llSay(0,"The rounded value of 4.1 is: "+(string)llRound(4.1) );
      //Returns "The rounded value of 4.1 is: 4"
      llSay(0,"The rounded value of -4.5 is: "+(string)llRound(-4.5) );
      //Returns "The rounded value of -4.5 is: -4"
      // Note: the above result not -5 as would be expected, due to the inaccuracy involved in storing -4.5 as a float
   }
}</lsl>

See Also

Functions

•  llCeil Rounds the float to an integer towards positive infinity
•  llFloor Rounds the float to an integer towards negative infinity

Deep Notes

Signature

function integer llRound( float val );