我有一个场景,如果用户有以下输入,我想要以下输出:
x -> y
2 -> 1
1 -> 0
0 -> 0
有谁知道如何通过功能实现这一目标?我能得到的最接近的是:
y = x-1
但这并不适用于0-> 0的情况。
请注意,模数或绝对值或我用编程语言评估的任何内容都是合理的游戏。
答案 0 :(得分:1)
在C,C ++,Objective-C,Java等语言中,使用右移运算符(>>
),您可以这样做:
y = x >> 1;
如果失败,整数除法也会起作用:
y = x / 2;