Kezdőoldal » Számítástechnika » Programozás » Javában hogyan tudom megoldani...

Javában hogyan tudom megoldani a jelenlegi forintra kerekítést?

Figyelt kérdés
Függvényt kellene hozzá írnom, és ötletem sincs. Math. Rounnd, ceil, floor? Vagy azt kellene valahogy beállítani, hogy mikor mire? Egész pozitív számokról beszélünk. Kezdő vagyok a suliban, kérlek ne kövezzetek emiatt!

2016. máj. 12. 09:15
 1/6 anonim ***** válasza:
2016. máj. 12. 09:21
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:
Nagyon köszönöm, a google nem dobta ki nekem a másik kérdést... Rásöbbentem, hogy túl akarom bonyolítani...
2016. máj. 12. 09:30
 3/6 anonim ***** válasza:

Naszóval, először is meg kéne szülni az összeg utolsó számjegyét. Ez hála Istennek, rém egyszerű: elosztod 10-zel és megnézed, mennyi a maradék.

int osszeg = 25364;

int utolsoSzamjegy = osszeg % 10; //=4


Mellesleg nem át kezdésnek lekerekíteni a számot:

int lekerekitett = osszeg / 10 * 10;

Jogos a kérdés, hogy mi értelme van osztani és szorozni is 10-zel, mivel az elvileg ugyanannyi. Hát, int típusú adatnál nem. Ha osztok egy int típusú értéket 10-zel, például a 25364-et, nem azt fogom kapni, hogy 2536,4, hanem azt, hogy 2536. Ha ezt felszorzom 10-zel, akkor pedig 25360-at kapok. Poén, mi? Lehetne használni rá beépített függvényt is, de szerintem kezdőként nem árt, ha agyalsz egy kicsit a problémán.


És itt jön az, hogy hogyan kerekítsünk:

- Ha az utolsoSzamjegy <= 2, akkor az eredmény a lekerekitett lesz

- Ha az utolsoSzamjegy 3 és 7 között van, akkor az eredmény a lekerekitett+5 lesz

- Ha az utolsoSzamjegy >=8, akkor az eredmény a lekerekitett+10 lesz

2016. máj. 12. 09:37
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:

var rounded = (int) Math.Sign(x) * Math.Ceiling(Math.Abs(x)/5) * 5;


[link]

2016. máj. 12. 11:46
Hasznos számodra ez a válasz?
 5/6 anonim ***** válasza:
Bocsánat, az utolsó válaszom nem jó. :(
2016. máj. 12. 11:47
Hasznos számodra ez a válasz?
 6/6 anonim ***** válasza:

Vagy egy iszonyat egyszerű megoldás:

(összeg + 2) / 5 * 5;

2016. máj. 12. 12:18
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!