Autor | Zpráva | ||
---|---|---|---|
koitus Profil * |
#1 · Zasláno: 5. 8. 2012, 14:49:32
Dobrý den, poraďte prosím jak zaokrouhlit číslo podle hodnoty v určité proměnné. Například mám v proměnné číslo 5 a chci toto číslo pomocí round() zaokrouhlit na 5, ale když je číslo 7,5 tak zase na 7,5.
Zkoušel jsem projít zdejší diskuze, ale nic nefungovalo.například na tohle někdo napsal, že mu to funguje: 5*ceil($x / 5) ale u mě to napsalo chybu: excepting , or ;
Díky. |
||
Str4wberry Profil |
#2 · Zasláno: 5. 8. 2012, 14:53:10
Cílem je tedy zaokrouhlit jen na celé číslo nebo poloviny?
|
||
koitus Profil * |
#3 · Zasláno: 5. 8. 2012, 15:01:44 · Upravil/a: koitus
Cílem je zaokrouhlit na číslo v proměnné, které může být 0.01 ale i třeba 5.
Omlouvám se, už mi to funguje. Nevím, kde byl problém. Vypadá to takhle: $c = 254.655; $z = 5; $x = round($c/$z)*$z; |
||
Sir Tom Profil |
#4 · Zasláno: 5. 8. 2012, 16:20:41
koitus:
Také dobrý den, „excepting , or ;“ v této hlášce je jasně popsána ona chyba. Možná si v proměnné $x měl desetinné číslo zapsané s desetinnou čárkou. „ $c = 254.655; $z = 5; $x = round($c/$z)*$z; “
K čemu to je? Nedostanu stejný výsledek při round($c); ?
|
||
Ugo Profil |
#5 · Zasláno: 6. 8. 2012, 07:21:48
Sir Tom:
round(16/5) = 3; 3*5 = 15; round(16) = 20; |
||
jenikkozak Profil |
#6 · Zasláno: 6. 8. 2012, 10:21:55
Sir Tom:
„K čemu to je? Nedostanu stejný výsledek při round($c); ?“ Ne. Když využiju Ugova čísla: round (16÷5) × 5 = round (3,2) × 5 = 3 × 5 = 15 round (16) = 16 U původně použité funkce ceil by to bylo takto: ceil (16÷5) × 5 = ceil (3,2) × 5 = 4 × 5 = 20 ceil (16) = 16 Když jsme ještě měli padesátníky, používalo se toto řešení běžně. |
||
Časová prodleva: 3 dny
|
|||
koitus Profil * |
#7 · Zasláno: 9. 8. 2012, 14:51:39
Sir Tom:
Používám to při zaokrouhlování na nejmenší možné platidlo v určité měně. |
||
Sir Tom Profil |
#8 · Zasláno: 10. 8. 2012, 12:10:24
koitus:
Jojo - ok. To je dobrý postup, jak zaokrouhlovat měny... |
||
Časová prodleva: 12 let
|
0