1

よし、それで宿題の質問はコンウェイのライフ ゲームについてです。私は最高のプログラマーではないので、これには問題があります。実際のアニメーションを作成する必要はありません。コンソールに出力するだけです。

質問の最初の方法は、ボードを印刷することです。

ボードは、2 次元のブール配列として表されます。

boolean[][] board = new boolean[numberOfRows][numberOfColumns];

print メソッドは次のように呼び出されます。

public static void printBoard(boolean[][] board)

このメソッドは、配列の各行を「.」を使用して別々の行に出力する必要があります。は false セルを表し、'*' は true を表します。

ブール値は false または true を意味することは知っていますが、これを行う方法がわかりません。while ループを使用する必要がありますか?

public static void printBoard(boolean[][] board) {
   boolean[][] board = new boolean[numberOfRows][numberOfColumns];

  int i = 0;
  int j = 0;

   while (i < numberofColumns) {
        System.out.print(".");
        i++;
    }

    >while (i < numberofColumns) {
        System.out.print("*");
        j++;

    }

    System.out.println(); }

それが私が今持っているものです。私も近いですか?'board is already defined in printBoard(boolean[][]) というエラー メッセージが表示されます

質問が不明確である場合は申し訳ありません。

4

1 に答える 1

2

基本的にやりたいことは、配列の配列全体を反復処理することです。for1 つのループを使用してboard(または foreach ループを)for反復処理し、最初のループ内に埋め込まれた別のループを使用して の各配列を反復処理する必要がありboardます。この埋め込まれたループでは、次のようなことを簡単に行うことができますSystem.out.print(board[i][j] ? "*" : ".")。最初の for ループの最後で、新しい行を印刷して、長方形のフォーマットを取得する必要があります。

于 2012-09-16T13:54:16.180 に答える