» Poradna » Programy

Percenta a zaokruhlovanie

 |   | 

Zdravim,

prosim som zaciatocnik a newiem ako mam spravit toto:

Mam dve premenne (dolar)suma a (dolar)zlava
suma - obsahuje cenu vyrobku vo formate napr. 123.40
zlava - obsahuje vysku zlavy v percentach napr. 15

a newiem ako mam spravit vypocet novej ceny po zlave.
A druhy problem ako tuto novu cenu zaokruhlit ak napr. vynde vysledok 114.97 samozrejme systemom do 5 nadol, od 5 nahor. Pomoze mi niekto???

Odpovědi na otázku

 |   | 

xe zabudol som napisat ze je to v PHP

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

nova_suma = suma - suma*(zlava/100.0)
co je to iste ako
nova_suma = suma*(1.0 - (zlava/100.0))

zaokruhlit na dve desatinne miesta neviem ako v PHP, ale ak mas nejaku fciu na pr. na zaokruhlovanie nadol, tak na 2 desatinne miesta: zaokruhlene_cislo = (ZaokruhliNadol(cislo*100.0 + 0.5)) / 100.0

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

A nevedel by niekto taku funkciu napisat. Aby napr. zo vstupnej premennej 114.97 vysla vystupna premenna spravne zaokruhlena (115.00). Alebo mi mozno aj stacilo keby niekto spravil tak ze vstupnu premennu oreze na 114.9 (bez ohladu nato ze napr. budu haliere viacciselne napr. 114.975226) a zisti ake cislo je za 114.9, v nasom pripade 7 takze pripocita +.10 ku tomu orezanemu cislu ,ak by bolo 4,3,2,1 tak len prida jednu nulu na koniec.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Pozri funkciu Round()

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

host dakujem presne toto som potreboval mas moju nehynucu vdaku

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 



bohuzial tato funkcia len ciastocne riesi moj problem. Ked sa stane ze vstupna hodnota je napr. 114.00 alebo 113.97 (proste suma ktoru zaokruhli na cele cislo bez halierov). Ja to mam vyriesene takto:

$vypocet = round($staracena, 1);
$newcena = "".$vypocet."0";

ked ale zaokruhli na cele cislo tak mi to potom vrati napr. 1140

Ako teda osetrit takyto problem ked sa vo vystupnej premennej nenachadza oddelovacia bodka??

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Moc jsem nepochopil, v cem je problem. Pokud mam promennou $cislo a chci zaokrouhlene se dvema desetinnymi misty, tak snad staci:

$vysledek = number_format(round($cislo, 1), 2, ',', ' '));

Pro $cislo==113.97 bude $vysledek == "114,00".

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Ach jaj, preco nepouzijes formatovany vystup (sprintf alebo nieco podobne)?

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Mario, Dolar, Suma




Určitě si přečtěte

Čistič moře nejenže nefunguje, ale navíc se láme

Čistič moře nejenže nefunguje, ale navíc se láme

** Zařízení v hodnotě 40 milionů dolarů mělo sbírat z hladiny oceánu plovoucí plastový odpad ** Mise ale nenaplňuje očekávání ** Šest set metrů dlouhé monstrum nejen moře nečistí, ale navíc rozpadá

Jaroslav Petr | 25

Na čem běží Seznam.cz: Běžný standard už nestačí, přechází na vlastní cloud i servery

Na čem běží Seznam.cz: Běžný standard už nestačí, přechází na vlastní cloud i servery

** Seznam nám prozradil detaily k jeho nové platformě SCIF ** V rámci jednoho privátního cloudu sjednocuje většinu služeb ** Vedle softwaru vyvíjí i vlastní hardware

Karel Javůrek | 14



Aktuální číslo časopisu Computer

Jak nastavit a ochránit nový mobil

Velký test bezdrátových klávesnicí a myší

Počítače v roce 2019

Srovnání barevných laserových multifunkcí