相关疑难解决方法(0)

负数的Mod正在融化我的大脑

我试图修改一个整数来获得一个数组位置,以便它循环.i % arrayLength对于正数而言做得很好,但对于负数而言,这一切都是错误的.

 4 % 3 == 1
 3 % 3 == 0
 2 % 3 == 2
 1 % 3 == 1
 0 % 3 == 0
-1 % 3 == -1
-2 % 3 == -2
-3 % 3 == 0
-4 % 3 == -1
Run Code Online (Sandbox Code Playgroud)

所以我需要一个实现

int GetArrayIndex(int i, int arrayLength)
Run Code Online (Sandbox Code Playgroud)

这样的

GetArrayIndex( 4, 3) == 1
GetArrayIndex( 3, 3) == 0
GetArrayIndex( 2, 3) == 2
GetArrayIndex( 1, 3) == 1
GetArrayIndex( 0, 3) …
Run Code Online (Sandbox Code Playgroud)

c# math modulo

175
推荐指数
8
解决办法
9万
查看次数

标签 统计

c# ×1

math ×1

modulo ×1