Ruby: Змінити від’ємне число на позитивне число?


105

Який найпростіший спосіб змінити від'ємне число на позитивне за допомогою рубіну?

тобто. Змініть "-300" на "300"

Відповіді:



27

Поставте перед цим негативний знак.

>> --300
=> 300
>> x = -300
=> -300
>> -x
=> 300

6
Тільки зауважте, що якщо число вже є позитивним, це зробить його негативним.
Саша Чедигов

Так. Уточнив це у своєму коментарі до вищезгаданої відповіді.
Брендон Боднар

8
це або не геніальність, або не безумство.
Стівен Нгуен

чому негативні голоси? це перетворює негатив у позитивне, як просили ОП. #absі -це різні функції з однаковою поведінкою для запитуваного вводу / виводу. Якщо це через небажане +-> -, це не більше ніж припущення, оскільки це не було охоплено ОП.
Andre Figueiredo

15

Чи не було б просто простіше помножити його на від’ємний?

x * -1

Таким чином можна повертатися туди-сюди.


Мені подобається використовувати це для наочності, так як використання знака - іноді може бути легко пропустити
Маттіас

1
Варто пам’ятати, що ви можете скористатися скороченням, x *= -1якщо хочете зберегти нове значення ...
SRack

На основі того ж принципу ми можемо розділити будь-яке від’ємне число на -1. Однак мені було просто цікаво, у чому може бути користь його використання над методом abs, про який згадував Yacoby
Apurva Mayank

1
abs повертає абсолютне значення. Якщо це все, що ви хочете, як це робить ОП, це добре. Але що робити, якщо вам потрібно їхати туди-сюди?
нерозумно налаштований веб-коваль

@ApurvaMayank яка користь від використання absцього? ОП не згадував, але він може або перетворити позитивне на негативне, або зберегти позитивне .. ви не можете припустити такого, не зазначивши про це.
Andre Figueiredo
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.