# Int, Round, RoundDown, RoundUp, and Trunc functions in Power Apps

Rounds a number.

## Round, RoundDown, and RoundUp

The **Round**, **RoundDown**, and **RoundUp** functions round a number to the specified number of decimal places:

**Round**rounds up if the next digit is 5 or higher. Otherwise, this function rounds down.**RoundDown**always rounds down to the previous lower number, towards zero.**RoundUp**always rounds up to the next higher number, away from zero.

The number of decimal places can be specified for these functions:

Decimal places | Description | Example |
---|---|---|

Greater than 0 | The number is rounded to the right of the decimal separator. | `Round( 12.37, 1 )` returns 12.4. |

0 | The number is rounded to the nearest integer. | `Round( 12.37, 0 )` returns 12. |

Less than 0 | The number is rounded to the left of the decimal separator. | `Round( 12.37, -1 )` returns 10. |

## Int and Trunc

The **Int** and **Trunc** functions round a number to an integer (whole number without a decimal):

**Int**rounds down to the nearest integer.**Trunc**truncates the number to just the integer portion by removing any decimal portion.

The difference between **Int** and **Trunc** is in the handling of negative numbers. For example, for an argument of `-4.3`

, **Int** will return the integer further away from zero, `-5`

, while **Trunc** will return the integer closer to zero, `-4`

. **Int** returns values that are unique amongst the five rounding functions, while **Trunc** returns the same values as **RoundDown**.

Use **Trunc** to extract the decimal portion of a number by subtracting it from the original, for example `X - Trunc(X)`

.

Decimal places cannot be specified with **Trunc** as it can with Microsoft Excel. Use **RoundDown** instead when this is needed.

## Single-column tables

These functions support single-column tables. If you pass a single number, the return value is the rounded version of that number. If you pass a single-column table that contains numbers, the return value is a single-column table of rounded numbers. The *DecimalPlaces* parameter can be a single value or a single-column table. If the single-column table has less values that the *Number*, zero is used for the remaining values. Use **ShowColumns** and other table shaping functions to extract a single-column table from a larger table.

## Syntax

**Round**(*Number*, *DecimalPlaces*)**RoundDown**(*Number*, *DecimalPlaces*)**RoundUp**(*Number*, *DecimalPlaces*)

*Number*- Required. The number to round.*DecimalPlaces*- Required. Number of decimal places to round to. Use a positive value to indicate decimal places right of the decimal separator, a negative value to the left, and zero for a whole number.

**Int**(*Number*)**Trunc**(*Number*)

*Number*- Required. The number to be rounded to an integer.

## Examples

Rounding to a whole number.

`X` |
`Round( X, 0 )` |
`RoundUp( X, 0 )` |
`RoundDown( X, 0 )` |
`Int( X )` |
`Trunc( X )` |
---|---|---|---|---|---|

7.9 | 8 | 8 | 7 | 7 | 7 |

-7.9 | -8 | -8 | -7 | -8 | -7 |

7.5 | 8 | 8 | 7 | 7 | 7 |

-7.5 | -8 | -8 | -7 | -8 | -7 |

7.1 | 7 | 8 | 7 | 7 | 7 |

-7.1 | -7 | -8 | -7 | -8 | -7 |

Rounding to two decimal places to the right of the decimal separator (0.01).

`X` |
`Round( X, 2 )` |
`RoundUp( X, 2 )` |
`RoundDown( X, 2 )` |
---|---|---|---|

430.123 | 430.12 | 430.13 | 430.12 |

430.125 | 430.13 | 430.13 | 430.12 |

430.128 | 430.13 | 430.13 | 430.12 |

Rounding to two decimal places to the left of the decimal separator (100).

`X` |
`Round( X, -2 )` |
`RoundUp( X, -2 )` |
`RoundDown( X, -2 )` |
---|---|---|---|

430.123 | 400 | 500 | 400 |

449.942 | 400 | 500 | 400 |

450.000 | 500 | 500 | 400 |

450.124 | 500 | 500 | 400 |

479.128 | 500 | 500 | 400 |

Rounding a single-column table of values.

`X` |
`Int( X )` |
`Round( X, 2 )` |
`RoundDown( X, [ 0, 1, 2 ] )` |
`RoundUp( X, [ 2 ] )` |
---|---|---|---|---|

[ 123.456, 987.593, 542.639 ] |
[ 123, 987, 542 ] |
[ 123.46, 987.59, 542.64 ] |
[ 123, 987.5, 542.63 ] |
[ 123.46, 988, 543 ] |

## Feedback

Submit and view feedback for