2016-12-27 9 views
-4

私はどのようにこれを行うことができますユーザーはコンソール(テーブル[4,5])の位置を入力して、私はそのユーザーがそれをタイプしたいですか?チェス盤の位置

int[,] table = new int[8, 8]; 
     for (int i = 0; i < 8; i++) 
      { 
       for (int j = 0; j < 8; j++) 
       { 
        if ((i + j) % 2 == 0) 
        { 
         table[i, j] = 0; 
        } 
        else 
        { 
         table[i, j] = 1; 
        } 
       } 
      } 
      Console.WriteLine("4 - king"); 
      Console.WriteLine("3 - queen"); 
      Console.WriteLine("4 - hunter"); 

      table[4,5] = 2; 
      table[6,7] = 3; 
      table[2,2] = 4; 

      for (int i = 0; i < 8; i++) 
       { 
        for (int j = 0; j < 8; j++) 
        { 
         Console.Write(table[i, j] + " "); 
        } 
        Console.WriteLine(); 
       } 

は、私はこの仕事をするために何をすべきと私はこのそれdoesntの仕事を入力した場合:?私は持っている理由 ザッツは私が修正できますどのように異なる行または列内の数字を入れて、この

 table[4,5] = 2; 
     table[4,7] = 3; 
     table[2,2] = 4; 
+0

私は事を理解しませんでした。あなたは何をしようとしているのですか?あなたの問題を説明する時間を取ってください、私たちはそれを推測することはできません – Stormhashe

+0

"それは動作しません"とはどういう意味ですか?私たちはここで何をしようとしているのか分からず、実際に問題を説明しなければなりません。 – David

+0

最初のループで 'table [4,5]'を上書きします。 'table [4,5] = 2;'を最初のループの後に移動するだけですか?また、 '=='と等しいかどうかをテストしています。代入は '='です。 –

答えて

2

代入演算子 "="を論理比較演算子 "=="と混同しています。 2行目はテーブル[4,5]と2を比較しているだけで、恐らくfalseを返しています。

変更して:あなたは、テーブルに値を割り当てるために管理していてもまた

table[4,5] = 2; 

は、[4,5]、あなたは次の行でそれを上書きします。その行を最初のネストされたループの最後に移動する必要があります。 2番目の "for(int i = 0; i < 8; i ++)の直前"

+0

私はどのようにしてポジションをコンソールに入れるのですか? –

+0

あなたは知っていますか?それをするには? –

+0

Console.ReadLine()を使用してユーザーと対話できます –

関連する問題