WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   ASP und Zahlen aufrunden (http://www.wcm.at/forum/showthread.php?t=119184)

Nightman 18.12.2003 19:46

ASP und Zahlen aufrunden
 
hi an alle

will eine zahle immer aufrunden aber mit rount rundet er von 0.1-0.4 immer ab

also 1,4 wird abgerundet und ich brauch aber bei 1,4 die zahl 2 und ned 1 wie kann ich das anstellen?

thx

Potassium 18.12.2003 20:45

vielleicht so:
if zahl > 1 then
zahl = 2
usw

Nightman 18.12.2003 20:51

mah du bist mein held *lol*

nee es is ja immer eine andere zahl die gerundet wird

bsp.

wenn ich 12 eintrgäge hab und will 5 einträge pro seite ausgeben brauch ich 3 seite

aber wenn ich 12:5 rechne kommt 2 raus also würden die letzten eintrgäge fehlen

JoergStueger 18.12.2003 20:59

http://msdn.microsoft.com/scripting...load/vbsdoc.exe

formatnumber(irgendwas)

hilft immer....


lad dir das teil runter und such nach formatnumber...

oh, oder meinst du zum beispiel aus 43 mach 40 und aus 47 mach 50?

dann einfach ne abfrage? letzte ziffer kleiner als 5, dann minus letzte ziffer, sonst + [10-letzte ziffer]


LG
Joerg

Potassium 18.12.2003 21:01

dann if zahl > int(zahl)
oder rundet int etwa auch?

Nightman 18.12.2003 21:03

int rundet gar ned sondern schneidet einfach die komastellen weg

Nightman 18.12.2003 21:07

ich will nur komastellen aufrunden nicht abrunden!!!

wbendl 18.12.2003 21:22

Hi!

Als erstes fällt mir da die Int-Funktion ein:

If Zahl > Int(Zahl) Then Zahl = Zahl + 1

Int gibt den Teil vor dem Komma zurück. Wenn die Zahl größer war, wir sie aufgerundet.

ACHTUNG: Wenn du mit negativen Zahlen arbeitest, und Int bringt nicht das gewünschte Ergebnis, dann probier mal Fix.
Bei positiven Zahlen bringen Int und Fix das gleiche Ergebnis.

So wie es aussieht, hast du mit ASP einiges vor. Da solltest du dich einmal mit VB näher beschäftigen. Am billigsten geht das mit der Hilfe der diversen Programme von MS-Office. Die meisten Funktionen sind in VB und VBA identisch.

mfg

WB

Nightman 18.12.2003 21:25

hi wbendl

jo ich denk das is genau das was ich brauch an das hab ich ned gedacht daweil is die antwrt zum greifen nahe wenn ich es getestet hab werde ich euch nochmal schreiben wenn es ned funzt natürlich auch :o)

JoergStueger 18.12.2003 21:28

Sorry hab gesehen, dass der Link nicht funkt!

So müssts auch gehen ...

<% =Round(9.87654321) %> Output: 10

Hoffe es nutzt!

LG
Joerg

Nightman 18.12.2003 23:12

hi JoergStueger

jo das funzt schon nur wenn die zahl 9.37654321 ist dann macht er 9 draus das aber trotzdem 10 sein sollte

Nightman 18.12.2003 23:20

hi wbendl

es funktioniert nur a bissl hab ich ändern müssen

---------
If strpage > Int(strpage) Then
strpage = Int(strpage) + 1
else
strpage = Int(strpage)
end if

THX viel spass noch

wbendl 19.12.2003 09:58

Hi!

OK, du hast mich bei einem Fehler ertappt: Natürlich muß man den ganzzahligen Teil um 1 erhöhen.

Hoffentlich falle ich unter die Weihnachtsamnestie.

mfg

WB

Nightman 19.12.2003 14:22

lol


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag