Autor | Zpráva | ||
---|---|---|---|
final Profil |
#1 · Zasláno: 6. 7. 2014, 11:36:38
Zdravím,
ako dosiahnuť z čísla 0.45 číslo 1 ? (0.45=>5 sa zaokrúhľuje hore takže 0.5=>1)
Funkčné riešenie ma napadlo spraviť to iba takto: round(round(0.45, 1)) |
||
yFang Profil |
#2 · Zasláno: 6. 7. 2014, 11:40:08
final:
Funkce ceil zaokrouhluje nahoru. |
||
Joker Profil |
#3 · Zasláno: 6. 7. 2014, 11:50:18
yFang:
Řekl bych, že final nechce vždy zaokrouhlit nahoru, ale zaokrouhlovat nějakou podivnou metodou. final: A čísla 0.44 a 0.445 se zaokrouhlí jak? |
||
SpatnaKlavesnice Profil * |
#4 · Zasláno: 6. 7. 2014, 13:55:08
0,44 -> 0,4 -> 0
0,445 -> 0,45 -> 0,5 -> 1 |
||
tazatel Profil * |
#5 · Zasláno: 6. 7. 2014, 14:00:15
final:
„0.45=>5 sa zaokrúhľuje hore“ Na Slovensku proběhla nějaká matematická revoluce? |
||
juriad Profil |
#6 · Zasláno: 6. 7. 2014, 14:07:54
SpatnaKlavesnice:
A k čemu je takové zaokrouhlení dobré? Kromě toho, že efektivně posunuje hranici z 0.5 na 0.444444...? Je to pěkné jen jako hříčka. |
||
Joker Profil |
SpatnaKlavesnice:
Tzn. pokud desetínná část je větší než 0,44…, zaokrouhlí se nahoru, jinak dolů? To by šlo naprogramovat přesně tak, jak jsem to popsal: function divneZaokrouhleni($cislo) { $ccast = floor($cislo); return (($cislo - $ccast) > 0.4444444444444444) ? $ccast + 1 : $ccast; } Ale jak píše juriad, je to spíš taková legrácka. Po vyzkoušení toho kódu jsem zjistil, že přesnost uložení desetinných čísel je větší než jsem čekal, takže jsem v porovnání zvýšil počet čtyřek za desetinnou tečkou z 13 na 16. |
||
final Profil |
#8 · Zasláno: 6. 7. 2014, 20:09:57
SpatnaKlavesnice napísal správne tak ako to potrebujem :-)
tazatel: „Na Slovensku proběhla nějaká matematická revoluce?“ na Slovensku nie :-) toto zaokrúhľovanie robím pre Českú republiku a môj nápad takto to zaokrúhľovať to nebol ;-) Každopádne ďakujem a ponechám to na mojom riešení v [#1] |
||
Joker Profil |
#9 · Zasláno: 6. 7. 2014, 20:19:41
|
||
final Profil |
#10 · Zasláno: 7. 7. 2014, 20:04:55
Joker:
ide mi len o čísla s 2 desatinnými miestami |
||
Časová prodleva: 10 let
|
0