说我们有类似的代码;
if (x > 6) {
x = 6;
}
if (x < -6) {
x = -6;
}
我们可以将其减少为一项检查和一项更新吗?
我们可以这样做,但是我们失去了招牌。
if (abs(x) > 6) {
x = 6;
}
(我不假定任何特定语言)
答案 0 :(得分:1)
使用sign
函数,您可以使用
x = sign(x) * min(6, abs(x))
或者,如果您更喜欢copysign
函数[其中copysign(x,y)返回一个浮点数,其浮点数(x的绝对值)为y的符号,
x = copysign(min(6, abs(x)), x)