This function bounds a number within a specified range. This function
is vectorized in a way such that either or both lowerbound and upperbound
can be length 1 or the same length as the input vector.

## Usage

`bound(num, lowerbound, upperbound)`

## Arguments

- num
A numeric vector to be bounded.

- lowerbound
The lower bound of the range.

- upperbound
The upper bound of the range.

## Value

A numeric vector with elements bounded within the specified range.

## Examples

```
bound(1, 0, 2)
#> [1] 1
bound(1:10, -1, 5)
#> [1] 1 2 3 4 5 5 5 5 5 5
```