– Oto kilka ciekawostek dotyczących typów rzeczywistych (zmiennoprzecinkowych). Zacznijmy od tego przykładu:
float f = 3 / 5;
– Wynikiem tego działania będzie f równe... zero!
– Tak, Raszi coś o tym wspominał.
– Och, naprawdę? Świetnie. Powtórek nigdy za wiele.
– W tym przykładzie nie ma błędu. Operacja dzielenia zawiera dwie liczby całkowite, więc reszta z dzielenia jest po prostu ignorowana. Aby tak się nie stało, przynajmniej jedna z tych dwóch liczb w operacji dzielenia musi być liczbą zmiennoprzecinkową.
– Jeśli jedna z liczb jest zmiennoprzecinkowa, to druga liczba zostanie najpierw przekonwertowana na typ zmiennoprzecinkowy, a następnie zostanie przeprowadzone dzielenie.
– Możesz rozwiązać ten problem w taki sposób:
Zapis dla liczb zmiennoprzecinkowych: |
---|
|
|
|
– A co, jeśli dzielenie zawiera zmienne?
– Wtedy robimy tak:
Przekonwertuj zmienną integer na wartość zmiennoprzecinkową: |
---|
|
|
|
|
– Dziwnie to wygląda. Nie ma może jakiejś innej operacji dzielenia – takiej wygodniejszej?
– Nie. Mamy tylko to.
– OK. Żaden problem.
GO TO FULL VERSION