# Wenn Zahl negativ == Dann positiv?



## daDom (18. November 2003)

Wie kann ich Zahlen, wenn sie negativ sind positiv machen?


----------



## Retlaw (18. November 2003)

```
abs(Zahl)
```
Liefert den absoluten Wert, also ohne Vorzeichen


----------



## derGugi (18. November 2003)

if Zahl < 0 then Zahl = -Zahl  ?


----------



## daDom (18. November 2003)

Cool - so easy.

Ich dank euch!


----------



## tuxracer (18. November 2003)

Der Ansatz von Gugi ist gar nicht so schlecht

if Zahl < 0 then Zahl = -Zahl ?

aber er funktioniert so nicht wirklich immer

die richtige Lösung wäre diese

if Zahl < 0 then Zahl = Zahl *(-1)


denn minus * minus gibt plus


----------



## daDom (18. November 2003)

Jo, wieso komm ich da nicht selbst drauf?

*(-1) - Ich hab nie richtig Lust auf Mathe gehabt...


----------



## derGugi (18. November 2003)

Wann funktionierts nicht? Ist ja eigentlich dasselbe. Aber ich muss zugeben, ich machs normalerweise auch mit -1*zahl, weiss aber nicht warum *g*


----------



## tuxracer (18. November 2003)

was passiert,wenn Du ne Zahl die neg ist mit der gleichen Zahl die ja auch neg ist abziehst?


Das Ergebnis ist NULL


und nicht wie eigentlich gewünscht aus negativ mach positiv


----------



## derGugi (18. November 2003)

:=) ich zieh gar nichts von der anderen Zahl ab. Ich schreib nur ein Minus vor die Zahl. Und da die Zahl negativ ist, steht dann --blubb --> +blubb.


----------



## tuxracer (27. März 2004)

@derGugi

Den Code Würd ich gern sehen, wo Du vor ne Negative noch ein Negatives Vorzeichen hängst, und dann ist es positiv

stell den doch mal ins Forum, oder sende das Teil per PN an mich, das kann ich mir weder vorstellen, noch glaub ich echt dran, dass das geht.


----------



## derGugi (27. März 2004)

hier: 

[gugi@gugi gugi]$ test=-2
[gugi@gugi gugi]$ test=$[-$test]
[gugi@gugi gugi]$ echo $test
2
[gugi@gugi gugi]$ test=$[-$test]
[gugi@gugi gugi]$ echo $test
-2

ist halt kein VB aber das Prinzip das gleiche.


----------



## Martinsi (29. März 2004)

Man  könnte das ganze auch ohne Überprüfung ob die Zahl<0 ist lösen.
Einfach die zahl quadrieren und dann die wurzel ziehen.
 Aber ich glaube das wird bei abs() eh gemacht oder ?


----------



## aquasonic (29. März 2004)

*-1 ist die beste Lösung, da wird nämlich positiv zu negativ und negativ zu positiv!


----------



## MAN (2. April 2004)

Wie wäre es ganz einfach mit


```
Zahl = -Zahl
```

?


mfG

MAN


----------



## tuxracer (2. April 2004)

@DerGugi

Ist mir nun klar, weshalb Du auch Methode *(-1) verwendest.
Funktioniert zwar, aber ist mehr Code, und nicht wirklich sauber.

@MAN

Deins ist eigentlich nix anderes als *(-1), einfach nicht sauber deklariert, damit es auch jeder sieht, wird das eben so geschrieben *(-1), dann sieht jeder was gemeint ist.


----------



## derGugi (2. April 2004)

gott das Thema ist ja wohl langsam ausgelutscht hoch 3!  
@Man: Kannst du lesen? Um das ging es die ganze Zeit Ich hab behauptet es geht und tux wollte es nicht glauben. 

@tux: mehr code? seit wann ist - mehr code als *(-1)? 
Naja egal, ich werde ab jetzt hier nichts mehr posten, wird mir zu blöd....


----------

