0

ここに私の問題があります。配列を乱数で埋めるプログラムを作成する必要があり(それで問題ありません)、偶数のインデックス番号または奇数の値のみを出力する必要があります( j)。このように試してみましたが、ifステートメントを配置すると、すべての偶数 (インデックスと値 - 配列の 2 番目) が表示されるため、間違っています。どうすればいいですか?

import java.util.Random;

public class Array {

public static void main(String[] args)
{
    int rows = 5;
    int colu = 2;
    
    Random r = new Random();
    
    int [][] array = new int [rows][colu];
    
    for(int row = 0; row < array.length; row++)
    {
        for(int col = 0; col < array[row].length; col++)
        {
            array[row][col] = r.nextInt(10);
        }
    }
    
    for(int i = 0; i < array.length; i++)
    {       
        for(int j = 0; j < array[i].length; j++)
        {
            if(array[i][j]%2 == 0){
            System.out.print(array[i][j] + " ");
            }

            }
        }
        System.out.println();
    }
}

どのようにすべきか

ありがとう

4

2 に答える 2

1

私はこれを突き刺すつもりですが、まだ完全に理解しているかどうかはわかりません.

int array[][] = new int[row][col];
// ... populate the array with random numbers, works fine...

// Let's traverse the first column.
for (int i = 0; i < row; i++) {
    int value = array[i][0]; // col 0 means first column
    if (value % 2 == 0) {
        // ...
    }
}

// Let's traverse the second column.
for (int i = 0; i < row; i++) {
    int value = array[i][1]; // col 1 means second column
    // ...
}

これはあなたが意味するものですか?そうである場合、パターンと、これを一般化してコードを少し小さくする方法がわかりますか?

于 2012-12-17T01:02:08.097 に答える