Jua*_*eza 1 c# formula sequence
我有一个具有5个状态的信号量变量.
我可以使用这个cicle来增加状态
X = (X + 1) % 5
Run Code Online (Sandbox Code Playgroud)
对于X = {0,1,2,3,4},生成{1,2,3,4,0}.
但是,如果我尝试向另一个方向减少状态,则不会带来正确的结果.
X = (X - 1) % 5
Run Code Online (Sandbox Code Playgroud)
对于X = {0,1,2,3,4},生成{-1,0,1,2,3} {{{0,0,1,2,3}} {}
例如在excel中,如果你尝试=MOD(-1;5)得到4.
代替
X = (X - 1) % 5
Run Code Online (Sandbox Code Playgroud)
使用
X = (X + 4) % 5
Run Code Online (Sandbox Code Playgroud)
这是短的形式
X = (X - 1 + 5) % 5
Run Code Online (Sandbox Code Playgroud)
或一般而言
X = (X - 1 + n) % n
Run Code Online (Sandbox Code Playgroud)
这确保了参数()总是正的 - 因此除法余数也保持为正.
| 归档时间: |
|
| 查看次数: |
90 次 |
| 最近记录: |