Autor Zpráva
arcadosi
Profil
Viackrat som sa uz pokusal napisat skript na halierove vyrovnanie, ale neuspesne, proste mam $vysledok z ktorej mi ma byt do jedneho policka napisane halierove vyrovnanie a do dalsieho by mala byt cena, problem bol ale v tom, ze neviem ako spravit, aby mi to zaokruhlilo a pricitavalo 1 ak sa zaokruhly hore a pod, viete mi niekto pomoct ? Je nato nejaka funkcia ?
WertriK
Profil *
To udelej pomoci podminek ...
rozdel si tu cenu na koruny a halire (napr. 3,60 => $koruny=3; $halire=60;)
Teda z tveho vykludu nechapu co jak na co zaokrouhlit, ale snad te toto nakopne spravnym smerem ...

if($halire => 50) {
$koruny++;
$halire = "00";
}
else {
$halire = "00";
}
arcadosi
Profil
hmm asi sme sa nepochopili, vies co je to halierove vyrovnanie ? uz si to niekedy v nejakom tlacive vyplnoval ?
Tim som nechcel urazit, len sa pytam
arcadosi
Profil
mas napriklad sumu:
15.56 sk //necuduj sa aj taka moze byt to neje divne.
a halierove vyrovnanie je, ze to to spravy toto:
tozdeli to na haliere ktore sa zvysia - halierove vyrovnanie v tomto pripade jeto 44 halierov
a na dalsiu sumu tj 16 sk mno a mne toto treba spravit, ze mi to rozdeli na 2 sumy z jedneho cisla, jedno je to halierove vyrovnanie a dalsie je ta cela suma, ale jeden z problemov co nechapem je % - zvysok, asi mi to bude treba, len neviem nic najst o tom operatory, skor ako by sa dal vyuzit v mojom pripade
Hugo
Profil
arcadosi

Toto jde jednoduše řešit tak, že sumu zaokrouhlíš nahoru a odečteš od ní nezaokrouhlenou hodnotu.

Operátor % vrací zbytek po dělení, např.

2%1 = 1

15%4 = 3
WertriK
Profil *
nemela by ta dalsi suma ("a na dalsiu sumu tj 16 sk mno") byt 6 ? jestli ne tak tomu stale nerozumim... :/
Richi
Profil
to jsem videl v nejakém filmu, neděláš v bance? :-))))
habendorf
Profil
Hugo

2%1 = 1

PHP teda neumím, ale nedovedu si při dělení jedničkou představit jiný zbytek než nulu. Nebo je v tom nějaký háček?
habendorf
Profil
arcadosi: Ty chceš teda z 15,56 dostat 16 a 0,44? Pak tedy viz Hugo:
Toto jde jednoduše řešit tak, že sumu zaokrouhlíš nahoru a odečteš od ní nezaokrouhlenou hodnotu.
Hugo
Profil
habendorf

Jo máš pravdu, psal jsem to v rychlosti. Má tam být samozřejmě nula nebo 1%2=1.
arcadosi
Profil
Jednoduche ako jednoduche:
halierove vyrovnanie, funguje tak:
ak je suma:

X,24 zaokruhluje sa na X
__
X,25 zaokruhluje sa na X,5 |
|--> tieto 2 pravidla je mozne spojit do jednej podmienky
X,74 zaokruhluje sa na X,5 |
---
X,75 zaokruhluje sa na X+1
viete mi nejako poradit ako to spravit aby to takto fungovalo a zaroven aj vypisovalo ako uz pisal Hugo ?
WertriK
Profil *
Ja bych to udelal tak ze bych to rozdelil na $halere a koruny (uz jsem psal) a potom jeste ty halire rozdelil
napr na (3,24) $hal1 = 2; $hal2 = 4; a pomoci podminek porovnal...

Nebo me jeste napada delit $halere cislem 25 a podle vysledku stanovit zaokrouhleni:

3,66
$halere = 66;
$d = $halere/25;
v nasem pripade 2,64 melo by platit (($d => 1 ) && ($d < 3))

if ($d < 1) { // treba pokud $halere = 20

X,24 zaokruhluje sa na X

}
else if (($d => 1 ) && ($d < 3)) { // treba pokud $halere = 30 nebo $halere = 60

X,25 zaokruhluje sa na X,5 |
|--> tieto 2 pravidla je mozne spojit do jednej podmienky
X,74 zaokruhluje sa na X,5 |

}
else if ($d > 3)) { // treba pokud $halere = 80

X,75 zaokruhluje sa na X+1

}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0