3

こんにちは、「値、たとえば「5」がタスク 7 の配列 (ランダム配列) に含まれているかどうかを判断するコードを作成するように言われました。検索後、値が見つかった場合は「値が見つかりました」と出力し、そうでない場合は「値が見つかりませんでした」と出力します。

ランダム配列の作成は理解していますが、逆方向に作業して特定の値を見つける方法に行き詰まっています。

これがこれまでのコードです

class Program
{
    static void Main(string[] args)
    {
        int[] myArray = new int[10];
        Random rand = new Random();

        for (int i = 0; i < myArray.Length; i++)
        {
            myArray[i] = rand.Next(19);
        }

    }
}

}

4

2 に答える 2

1

前に戻るには、イテレータ to を使用して for ループを使用しますi--

for (int i = myArray.Length - 1; i >= 0; i---)
{
    if(// Check if myArray[i] equals the value to find)
    {
         // If it is the case, you can get out from the for loop with break
         break;
    }
}

forループは 4 つの部分に分割されます。

for (initializer; condition; iterator)
    body
  1. initializer、ループの最初の反復の前に実行されます (ここでは、配列の最後のインデックスから開始しますmyArray.Length - 1:)
  2. condition反復ごとに評価されます。この条件が true の場合は 3 になります (forループに留まりたい場合)。それ以外の場合はループをi >= 0終了します。for
  3. body、条件を満たす反復ごとに実行されます
  4. が実行されます(ここでは、iterator後退したいので、減少させたいi
  5. その後、2に戻ります
于 2013-02-04T15:03:02.390 に答える
1

最大インデックスから最小インデックスへのループを使用します。

 bool found = false;
 for (int i = myArray.Length - 1; i >=0 ; i--) 
     if(myArray[i] == 5)
        found = true;
 if(found)
 {

 }
 else
 {

 }
于 2013-02-04T15:03:25.313 に答える