Miten ihmeessä saa desimaalipyöristyksen halutulla tarkkuudella ?
Meinaan eikö Cint kykene millään pyöristämään halutulla tarkkuudella ?
Esim: Meillä on vaikkapa luku 4.5356789 ja haluaisin sen 2:n desimaalin tarkkuudella.
Tuntuu niin hiton typerältä käyttää aina menetelmää:
A = 4.5356789
B = A * 100
C = Cint(B)
D = C / 100
Tuosta tulee siten D:n arvoksi 4.54 , mutta onko hommaan mitään järkevämpää tapaa ?
Luulisi ainakin, mutta yhdestäkään VB-ohjelmoitioppaasta en moiseen ohjetta löytänyt.
Meinaan eikö Cint kykene millään pyöristämään halutulla tarkkuudella ?
Esim: Meillä on vaikkapa luku 4.5356789 ja haluaisin sen 2:n desimaalin tarkkuudella.
Tuntuu niin hiton typerältä käyttää aina menetelmää:
A = 4.5356789
B = A * 100
C = Cint(B)
D = C / 100
Tuosta tulee siten D:n arvoksi 4.54 , mutta onko hommaan mitään järkevämpää tapaa ?
Luulisi ainakin, mutta yhdestäkään VB-ohjelmoitioppaasta en moiseen ohjetta löytänyt.
Vastaukset 3
Vanhimmat
Eikö siinä ole Round(4.5356789,2)
Kiitän.
Noinhan se näkyy toimivan. Ja jo löytyi netistä esimerkkejäkin, kun tiesi mitä hakea.
Aika outoa, että tuo on noista omista ohjekirjoista onnistuttu jättämään pois.
Itse käytän samaa perustyyliä pyöristyksessä kuin aikoina ennen round-funktioita.
Eli pyöristys kahteen desimaaliin:
Luku# = int(Luku#*100 0.5)