Ruby: Changer le nombre négatif en nombre positif?

105

Quelle est la façon la plus simple de changer un nombre négatif en positif avec rubis?

c'est à dire. Remplacez "-300" par "300"

Shpigford
la source

Réponses:

268

L'utilisation absretournera la valeur absolue d'un nombre

-300.abs  # 300
300.abs   # 300
Yacoby
la source
3
ma réponse est juste pour les nombres négatifs, si vous devez toujours avoir la valeur absolue, c'est certainement le meilleur moyen.
Brandon Bodnar
27

Mettez un signe négatif devant lui.

>> --300
=> 300
>> x = -300
=> -300
>> -x
=> 300
Brandon Bodnar
la source
6
Notez simplement que si le nombre est déjà positif, cela le rendra négatif.
Sasha Chedygov
Ouais. Clarifié cela dans mon commentaire à la réponse acceptée ci-dessus.
Brandon Bodnar
8
ce n'est pas du génie ou pas de la folie.
Stephen Nguyen
pourquoi des votes négatifs? cela devient négatif comme OP l'a demandé. #abset -sont des fonctionnalités différentes avec le même comportement pour l'entrée / sortie demandée. Si c'est à cause d'un indésirable +-> -, ce n'est rien de plus qu'une hypothèse, car cela n'a pas été couvert par OP.
Andre Figueiredo le
15

Ne serait-il pas plus simple de le multiplier par un négatif?

x * -1

De cette façon, vous pouvez aller et venir.

absynthe esprit web smith
la source
J'aime l'utiliser pour plus de clarté, car l'utilisation du signe - peut parfois être facile à manquer
Matthias
1
Il convient de rappeler que vous pouvez utiliser le raccourci x *= -1si vous souhaitez stocker la nouvelle valeur ...
SRack
Basé sur le même principe, nous pouvons même diviser tout nombre négatif par -1. Cependant, je me demandais simplement quel pouvait être l'avantage de l'utiliser sur la méthode des abdominaux comme mentionné par Yacoby
Apurva Mayank
1
abs renvoie une valeur absolue. Si c'est tout ce que vous voulez, comme le fait l'OP, c'est bien. Mais que faire si vous avez besoin de faire des allers-retours?
absynthe minded web smith
@ApurvaMayank quel est l'avantage d'utiliser par absrapport à cela? OP n'a pas mentionné, mais il pouvait soit devenir positif en négatif soit le garder positif ... vous ne pouvez pas en supposer un sans que cela soit mentionné.
Andre Figueiredo le