如何在Delphi中将正整数转换为负数?我知道可以使用 ABS(int)
将负数转换为正数,但我需要将正数转换为负数。
如果你想绝对确保得到负数(或零),请使用
number := -abs(number)
据我所知,没有这个功能的函数。你可以制作
if yourvariable > 0 then
yourvariable := -yourvariable;
唉...太晚了,但是number := number * -1;
也可以,但这会改变任何数的符号,从负数变为正数,反之亦然...为确保得到一个负值,使用@Mef的答案
编辑: 即使更晚,number := 0 - number;
也可以...这只是反转了符号
假设n
是你的数字,那么n-(n*2) = -n
的公式成立。
a
是正数,并且想要获得与原点相同距离的负数,那么你只需要做-a
。如果你不知道a
的符号,并且想要确保它是负数或零,也就是说,只有当a
是正数时才用-a
替换a
,那么你可以像 RBA 建议的那样做,但 Mef 的方法更简洁:-abs(a)
。 - Andreas Rejbrand