Witam,
Czy może mi ktoś podsunąć jakiś kod(C++), który by konwertował resztę float na liczbę całkowitą? Chodzi mi konkretnie o coś takiego
float f = 0.8125 = 0.1101(2)
unsigned short int = 1101(2)
Za ew. odpowiedzi dzięki:) Czuję, że rozwiązanie jest banalne, jednak nie mogę na nie wpaść:)
0
0
Zapomniałem dodać, część całkowita wynosi zawsze 0.
0
jednak nie mogę na nie wpaść:)
To nie trzeba zgadywac tylko zajrzec do dokumentacji:
http://cplusplus.com/reference/clibrary/cmath/modf/ - ta funkcja powinna ci pomoc :)
0
ja wpadłem na śmieszne rozwiązanie,
float ma 8 miejsc po przecinku, więc pomnóż liczbę przez 8*10 i zrzutuj na int :D
0
OK, ale mi chodzi o to, żeby zapisać tę resztę jako liczbę całkowitą. Dokładnie jest mi to potrzebne do zapisywania przedziałów w kodowaniu arytmetycznym, pewnie wiesz o co chodzi(jeśli nie, to tam dzielimy na podprzedziały i wtedy mamy np (0;0.1)(0.1;0.9)(0.9;1) i w celu wyeliminowania zmiennej liczby bitów muszę zapisać to na u s i)
0
Zulowski:
A float nie jest zmiennopozycyjny?
Pozdr