0

大家好,如何在c#中得到一个数字和下一个可被10整除的数字之间的差异?

例子。

15 should give 5. (20-15 =5)
21 should give 9. (30-21=9)
30 should give 0. (30-30=0)

对不起我的英语不好。提前致谢。

4

4 回答 4

8

Mod 不起作用,这会给你带来与你想要的相反的东西。21%10=1 不是你想要的 9。你应该做的是 10-(num%10)。这会让你更接近。在这种情况下,唯一错误的结果是 30,结果为 10。

所以:

(10-(num%10))%10 

这每次都会给你正确的结果,虽然有点麻烦。

于 2012-09-25T18:25:53.583 回答
2

你应该使用模数

15 % 10 will give 5
21 % 10 will give 1
30 % 10 will give 0
于 2012-09-25T18:21:49.480 回答
1

您正在寻找“mod”运算符。

x=15;
y=x%10; //y=5

http://msdn.microsoft.com/en-us/library/0w4e0fzs.aspx

于 2012-09-25T18:22:44.883 回答
0

答案并不那么直截了当。我不确切知道 C# 的语法,但这是我的方法。您需要使其适应您的代码

    x = 15;
    y = x % 10;
    if y > 0 return 10 - y
    return 0
于 2012-09-25T18:29:44.680 回答