Funkcja round() służy do zaokrąglania liczb zmiennoprzecinkowych. Gdy wywołujemy ją z jednym argumentem (bez podania precyzji), otrzymujemy wynik zaokrąglony do najbliższej liczby całkowitej.
Wartość 0,60 leży bliżej liczby całkowitej 1 niż 0, dlatego round(0.60) zwraca 1. To jest typowy przypadek zaokrąglania "w górę", gdy część ułamkowa jest większa od 0,5.
- round(0.29) nie daje 1, bo 0,29 jest znacznie bliżej 0 niż 1, więc wynikiem jest 0.
- round(-1.40) nie daje 1, bo to liczba ujemna o wartości bezwzględnej bliższej -1 niż -2; wynik zaokrąglenia będzie liczbą ujemną, a nie dodatnią 1.
- round(-4.60) również nie da 1: liczba jest ujemna i po zaokrągleniu pozostanie w okolicach -5, nie zmieniając znaku na dodatni.
Warto pamiętać o dwóch typowych pułapkach egzaminacyjnych. Po pierwsze, round() to nie to samo co obcięcie części ułamkowej (np. przez rzutowanie na typ całkowity), więc wynik może różnić się od "ucięcia po przecinku". Po drugie, liczby zmiennoprzecinkowe bywają zapisywane w pamięci przybliżeniami, co może mieć znaczenie w przypadkach granicznych (np. dokładnie 0,5), choć w tym pytaniu wartości są na tyle "bezpieczne", że wynik jest jednoznaczny.
Na egzaminie najlepiej szybko ocenić, do której liczby całkowitej dana wartość jest bliżej (dla dodatnich: 0 czy 1; dla ujemnych: -1 czy -2 itd.), a dopiero potem wybrać wywołanie funkcji.