Float to int

Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

Re: Float to int

Příspěvek od Ludek » 30 bře 2020, 08:05

Ahoj lidi, snad fungujete ve zdraví...
Máte pravdu, těžko se radí, když neznáte důvod. Už jsem to dle vašich rad nějak stvořil. Ale i tak vysvětlím.
Mám čidlo, které mi posílá různá desetinná místa, dle dělitelnosti.
To znamená že číslo a je vždy jasné... to je celé číslo výsledku, třeba 22
ale číslo b může být klidně i 5 (22.5) anebo 75 (22.75) ale také i 156 (22.156)... Proto mě to zajímalo a vrtalo hlavou.
Takže nechci číslo b s pevným počtem míst, to by mi psalo 005 nebo 075 a 156. Potřebuji 5,75 a 156...
tak se mějte a držte se...

KamilV
Příspěvky: 479
Registrován: 03 dub 2018, 15:27
Reputation: 0
Bydliště: Olomouc

Re: Float to int

Příspěvek od KamilV » 30 bře 2020, 12:52

No a jsme u toho, pokud to budeš fixně násobit stovkou, tak Tě to projde jen v tom druhém případě.
V prvním nedostaneš 5, ale 50, ve třetím nedostaneš 156, ale 15.
Budeš s tím číslem ještě někde dál něco počítat? Nebo ho třeba jen zobrazíš na display? Pokud s ním nebudeš dál počítat, tak bych ho ani do Intu nelámal a rovnou bych z něj udělal char a na display to poslal od des. tečky / čárky dál...

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Float to int

Příspěvek od jankop » 30 bře 2020, 15:07

Přiznám se, že jen zírám.
To znamená že číslo a je vždy jasné... to je celé číslo výsledku, třeba 22
ale číslo b může být klidně i 5 (22.5) anebo 75 (22.75) ale také i 156 (22.156)... Proto mě to zajímalo a vrtalo hlavou.
Takže nechci číslo b s pevným počtem míst, to by mi psalo 005 nebo 075 a 156. Potřebuji 5,75 a 156...
Proč potřebuješ 5, 75 a 156?
Pokud zobrazuji nějaké racionální číslo na displeji, tak si obvykle přeji, aby se zobrazovalo vždy se stejným počtem desetinných míst.
Tak bych si přál výsledek třeba na dvě desetinná místa
a=22 b=50
a=22 b=75
a=22 b=15
Když bych toužil po třech desetinách, tak holt použiju násobení *1000.
a=22 b=500
a=22 b=750
a=22 b=156
Když pominu skutečnost, že věc lze nejspíš vyřešit mnoha jinými efektivnějšími způsoby, tak mi vlastně uniká, co chceš vlastně řešit. Obvykle jsem zápasil s tím, že jsem naopak musel doplňovat v datech nadbytečné nuly, abych ve výstupech zachoval rozumný formát.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 10 hostů