albertminrich
Goto Top

Vbs - Ergebnis einer Rechnung soll minimal 0 sein?

Hallo,

kann man als Ergebnis einer Rechnung 0 ausgeben lassen, wenn das Ergebnis kleiner als 0 wäre.
Beispiel:
wscript.echo 5-3 soll 2 ergeben
wscript.echo 3-5 soll 0 ergeben

Ich kanns mit einer function lösen:

wscript.echo minimalergebnis0(3 - 5)
function minimalergebnis0(rechnung)
   if rechnung < 0 then
      minimalergebnis0 = 0
   else
      minimalergebnis0 = rechnung
   end if
end function

Aber vielleicht gibt´s ja auch eine vordefinierte Funktion oder eine elegantere Lösung.


Danke
AlbMin

Content-Key: 180304

Url: https://administrator.de/contentid/180304

Printed on: April 26, 2024 at 05:04 o'clock

Member: bastla
bastla Feb 09, 2012 at 14:01:49 (UTC)
Goto Top
Hallo AlbertMinrich!

Du könntest es zwar so erreichen:
WScript.Echo -((3-5)>=0)*(3-5)
aber "elegant" wäre der letzte Begriff, der mir dafür einfiele ... face-wink

Grüße
bastla
Member: AlbertMinrich
AlbertMinrich Feb 09, 2012 at 19:45:21 (UTC)
Goto Top
Zitat von @bastla:
Hallo AlbertMinrich!

Du könntest es zwar so erreichen:
WScript.Echo -((3-5)>=0)*(3-5)
> 
aber "elegant" wäre der letzte Begriff, der mir dafür einfiele ... face-wink

Also bitte, wenn das nicht elegant ist?!?

Super, danke.

Gruß
AlbMin
Member: Biber
Biber Feb 09, 2012 at 21:13:56 (UTC)
Goto Top
Hmmm, ihr Grazien,


bei mir ergibt es aber.
'Script d:\temp\testmin0.vbs  
a=Wscript.arguments(0) : b=Wscript.arguments(1)
Wscript.echo "In  a:" , a, " b:",  b , "Ergebnis:" , -((a-b)>=0)*(a-b)   

rumgetestet...
d:\temp>cscript //nologo d:\temp\testmin0.vbs 5 3
In  a: 5  b: 3 Ergebnis: 2

d:\temp>cscript //nologo d:\temp\testmin0.vbs 3 5
In  a: 3  b: 5 Ergebnis: -0

d:\temp>cscript //nologo d:\temp\testmin0.vbs 3 3
In  a: 3  b: 3 Ergebnis: 0

Ist die (-0) denn gewollt?

Grüße
Biber
Member: bastla
bastla Feb 09, 2012 at 21:22:30 (UTC)
Goto Top
@Biber
Ist die (-0) denn gewollt?
Wohl nicht (könnte aber das Gegenstück zur "schwarzen Null" sein face-wink) - dann eben
Wscript.echo "In  a:" , a, " b:",  b , "Ergebnis:" , ((a-b)>=0)*-(a-b)
Grüße
bastla