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 に答える