,我有一个号码说9,我想找到如何创建程序来检查数字b是21(即9 + 12)还是33(即9 + 24)或45(9 + 36) ) 等等。我可以用C#或SQL
获取它吗?答案 0 :(得分:8)
通过澄清,看起来你想要找出是否有一个整数x
(用数学术语,而不是代码)
b = 9 + 12x
是真的;所以你想知道b-9
是否是12
的某个倍数;这很容易:
bool isMatch = ((b - 9) % 12) == 0;
如果你想知道哪个x
:
int x = (b - 9) / 12;
答案 1 :(得分:3)
你的问题并不完全清楚,但我认为你正在寻找modulo operator。 21 % 12 = 9
,33 % 12 = 9
,45 % 12 = 9
。
在C#和SQL中,这只是%
,它像算术运算符一样使用(+, - 等)
答案 2 :(得分:1)
我认为你有三个变量,解决方案就是这样:
var a = 9;
var b = 12;
var c = 21;
var isInRange = IsInRange(c, a, b);
private bool IsInRange(int input, int offset, int multiple){
return ((input - offset) % multiple) == 0;
}
答案 3 :(得分:0)
从数字B中减去原始数字(在本例中为9),然后查看B%12是否与零不同。