# Why is sage behaving weird when rounding rational numbers?

I might be doing something stupid, but Sage's `int()`

and `round()`

functions seem to be buggy to me.

I'm trying to use these with rational numbers to round towards zero. I'd expect `-7/4`

to round to `-1`

and `+7/4`

to round to `1`

. Instead I get different behavior for rationals and their decimal representation:

```
┌────────────────────────────────────────────────────────────────────┐
│ SageMath Version 7.1, Release Date: 2016-03-20 │
│ Type "notebook()" for the browser-based notebook interface. │
│ Type "help()" for help. │
└────────────────────────────────────────────────────────────────────┘
sage: int(-1.75) # Correctly rounds towards zero
-1
sage: int(-7/4) # Does not round towards zero
-2
sage: (-7/4).round("toward") # Does not round towards zero (despite what the documentation claims!)
-2
sage: -7/4 + 0.0 # The numbers are in fact the same!
-1.75
```

How do I round rational numbers towards zero in Sage?

Try to read

Also, you may wish to use

`ceil`

or`floor`

for your application.