1

これが私のコードです

        int i = 0;
        while (i < 10)
        {
            i++;
            i = i % 10;
        }

上記のコードは、制限に達するとカウンターを0にリセットします。if条件を置き換える以下のコードで同様のことを行う方法はありますか

        int i = 10;
        while (i > -1)
        {
            i--;
            if (i == -1)
                i = 10;
        }
4

4 に答える 4

2

両方のループがwhile(true)そうであるため、質問では何の役割も果たしません。

それは去ります:「私はifなしでカウントダウンロールオーバーをすることができますか?」

あなたが本当にしたいのであれば、答えはイエスです:

 i--;
 i = (i + 10) % 10;
于 2012-09-25T14:43:13.043 に答える
1
    int i = 10;
    while (true)
    {
        i = (i + 10) % 11;
    }

これはあなたに与えるでしょう:

10 -> 9
9 -> 8
8 -> 7
7 -> 6
6 -> 5
4 -> 3
3 -> 2
2 -> 1
1 -> 0
0 -> 10
于 2012-09-25T14:40:48.630 に答える
0

これを使用することにより、制限10に達したときにiの値を0にリセットできます。

int i = 0;
while (i < 10)
{
   i++;
   if(i==10)
   {
      i=0;
   }
}
于 2012-09-25T14:41:57.127 に答える
-1

最初のループは0..9の数字を繰り返します。同じ方法で、コードを9..0で反復処理できます。

int i = 10;
while (i > -1)
{
    i--;
    i = i % 10;
}
于 2012-09-25T14:42:26.070 に答える