/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Runde af til nærmeste 5?
Fra : Rasmus Nielsen


Dato : 06-01-05 12:37

Hej.

Hvordan runder jeg et tal af til nærmeste 5 med asp - alt 12 skal blive til
10 - og 13 skal blive til 15 osv.?

Mvh. Rasmus Nielsen.



 
 
Jens Gyldenkærne Cla~ (06-01-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 06-01-05 12:54

Rasmus Nielsen skrev:

> Hvordan runder jeg et tal af til nærmeste 5 med asp - alt 12 skal blive til
> 10 - og 13 skal blive til 15 osv.?

Fx med denne funktion:

Function round2x(nummer, x)
   ' Afrund nr. til nærmeste x
   Dim roundedDown, modulus
   roundedDown = (nummer \ x) * x
   modulus = nummer mod x
   If modulus >= (x / 2) Then
      round2x = roundedDown + x
   Else
      round2x = roundedDown
   End If
End Function   

Kald den fx med round2x(243, 5)

Hvis x er lige og nummer er midt mellem to brugbare afrundingen, runder
funktionen op. Det kan vendes ved at fjerne lighedstegnet i
if-sætningen.

--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Torben Brandt (07-01-2005)
Kommentar
Fra : Torben Brandt


Dato : 07-01-05 15:02

Jens GyldenkærneClausen wrote:
> Rasmus Nielsen skrev:
>
> > Hvordan runder jeg et tal af til nærmeste 5 med asp - alt 12 skal blive til
> > 10 - og 13 skal blive til 15 osv.?
>
> Fx med denne funktion:
>
> Function round2x(nummer, x)
> ' Afrund nr. til nærmeste x
> Dim roundedDown, modulus
> roundedDown = (nummer \ x) * x
> modulus = nummer mod x
> If modulus >= (x / 2) Then
> round2x = roundedDown + x
> Else
> round2x = roundedDown
> End If
> End Function   
>
> Kald den fx med round2x(243, 5)
>
> Hvis x er lige og nummer er midt mellem to brugbare afrundingen, runder
> funktionen op. Det kan vendes ved at fjerne lighedstegnet i
> if-sætningen.

Hvis du ikke har problemer med at benytte round-to-even-princippet, så kan det
gøres nemmere:
Function round2x(nummer, x)
round2x = round(nummer / x) * x
End Function

/Torben

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (07-01-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 07-01-05 15:54

Torben Brandt skrev:

> Hvis du ikke har problemer med at benytte
> round-to-even-princippet, så kan det gøres nemmere:
> Function round2x(nummer, x)
> round2x = round(nummer / x) * x
> End Function

Elegant.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408526
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste