19. august 1999 - 12:59
Der er
7 kommentarer og 2 løsninger
Afrunding af tal
Jeg ved at man kan afrunde tal v.h.a. formatNumber og round, men er det muligt at afrunde f.eks. 553 til 600 eller 21 til 20?
Annonceindlæg fra NetNordic
19. august 1999 - 13:34
#1
Man kan jo lave noget helt gerenelt a'la tal = 553 faktor = 10^(len(tal)-1) Response.Write "TEST variabel: " & Round(tal/faktor)*faktor Man kan jo også bare sætte faktor til 100 eller 10 - alt efter hvilket resultet man vil have.
19. august 1999 - 13:34
#2
Det skulle jo ha' været et svar...
19. august 1999 - 13:40
#3
Jeg ved godt at man kan gøre det på den måde - eller hvis man vil bruge et vilkårligt tal: afrundetTal= round(tal/10^(len(tal)-1))*10^(len(tal)-1) Men det er den lange måde - er der en kort måde? Hvis der ikke kommer andre løsninger i dag, så får du bare point´ne
19. august 1999 - 13:45
#4
Det tror jeg ikke der er...
19. august 1999 - 13:45
#5
Det gøres sådan: Public Function Afrund(X As Single) Dim TempSign As Integer TempSign = Sgn(X) X = Abs(X) 'Afrund = TempSign * (-Int(-X / 100) * 100) 'Runder op til nærmeste hundrede 'Afrund = TempSign * (Int(X / 10) * 10) 'Runder ned til nærmeste tiere End Function
19. august 1999 - 13:50
#6
Du havde jo selv svaret !!! Der er ikke nogen kortere måde - end den lange, hvis du vil have en funktion for vilkårlige tal - kun, hvis du altid har bestemte talstørrelser.
19. august 1999 - 13:51
#7
Bemærk lige, at round ikke både kan runde op og ned !!!
25. august 1999 - 11:48
#8
moses - Det passer ikke - "round" runder fint op og ned
25. august 1999 - 11:55
#9
Du har fuldstændig ret - du skal hænges !!! Det var en tanketorsk fra min side !!
Kurser inden for grundlæggende programmering