teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

すみません、質問を絞りました。申し訳ありません

2021/02/19 02:52

投稿

java-baby
java-baby

スコア0

title CHANGED
File without changes
body CHANGED
@@ -2,22 +2,25 @@
2
2
 
3
3
  javaでリバーシ作成を行っています
4
4
  c言語しか扱ったことが無く、苦戦しています
5
- javaの基礎的な知識も教えていただけるとありがたいです
6
5
 
7
6
  とりあえず、初期の盤面のみを出力させるプログラムです
8
7
 
8
+ getStr()でresultに盤面の状態を格納する方法が分かりません
9
+
9
10
  ### 発生している問題・エラーメッセージ
10
11
 
11
- ```
12
+   1 2 3 4 5 6 7 8
12
- エラーメッセージ
13
+ とだけ出力されています
13
- ```
14
14
 
15
15
  ### 該当のソースコード
16
16
 
17
17
  ```ここに言語名を入力
18
18
  ソースコード
19
+ ``````ここに言語を入力
20
+ ここに言語を入力
21
+ ```
19
22
  public class Reversi {
20
- private static final String SAVE_FILE = "data.txt"; // ゲームデータを保存するファイルの名前
23
+ private static final String SAVE_FILE = "data.txt"; // ゲームデータを保存するファイルの名前
21
24
 
22
25
  public static void main(String[] args) {
23
26
  Board board = new Board();
@@ -26,14 +29,12 @@
26
29
 
27
30
  }
28
31
  class Board {
29
- static final int SIZE = 8; // 盤面のサイズ
32
+ static final int SIZE = 8; // 盤面のサイズ
30
33
  private Stone cur_turn = Stone.BLACK; // 現在の番(黒が先手)
31
34
  private int turn_num = 1; // 通し手数
32
35
  private Stone board[][] = new Stone[Board.SIZE][Board.SIZE]; // 盤面の内容
33
36
  private static final String BR = System.getProperty("line.separator"); // 改行文字
34
- private static final Point DIR[] = { new Point(1, 0), new Point(-1, 0), // 探索方向
37
+
35
- new Point(0, 1), new Point(0, -1), new Point(1, 1),
36
- new Point(1, -1), new Point(-1, 1), new Point(-1, -1)};
37
38
 
38
39
  // コンストラクタ
39
40
  Board() {
@@ -55,20 +56,11 @@
55
56
 
56
57
  return result;
57
58
  }
58
- // 現在の番を返す.
59
- Stone getCurTurn() {
60
- return this.cur_turn;
61
- }
62
- // 通し手数を返す.
63
- int getTurnNum() {
64
- return this.turn_num;
65
- }
66
59
  }
67
60
 
68
61
 
69
62
 
70
63
 
71
-
72
64
  //石(NONEは石が置かれていないことを表す)
73
65
  enum Stone {
74
66
  NONE("・"), BLACK("●"), WHITE("○");
@@ -82,7 +74,6 @@
82
74
  }
83
75
 
84
76
  }
77
+ ```
85
78
 
86
- ### 補足情報(FW/ツールのバージョンなど)
79
+ ### 補足情報(FW/ツールのバージョンなど)
87
- Eclipse、JUnitで同時にテストも行っています。
88
- getCurTurn()、getTurnNum()のテストメソッドの例も教えていただけると助かります。

1

詳細を記載しました

2021/02/19 02:52

投稿

java-baby
java-baby

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,11 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- ここに質問の内容を詳しく書いてください。
4
- (例)PHP(CakePHP)●●なステムを作っています
3
+ javaリバーシ作成を行っています
4
+ c言語しか扱ったことが無く、苦戦しています
5
- ■■な機能を実装中に以下エラーメッセージ発生しまし
5
+ java基礎的な知識も教えていただけるとありがたいです
6
6
 
7
+ とりあえず、初期の盤面のみを出力させるプログラムです
8
+
7
9
  ### 発生している問題・エラーメッセージ
8
10
 
9
11
  ```
@@ -14,12 +16,73 @@
14
16
 
15
17
  ```ここに言語名を入力
16
18
  ソースコード
19
+ public class Reversi {
20
+ private static final String SAVE_FILE = "data.txt"; // ゲームデータを保存するファイルの名前
21
+
22
+ public static void main(String[] args) {
23
+ Board board = new Board();
24
+ System.out.println(board.getStr());
17
- ```
25
+ }
18
26
 
27
+ }
19
- ### 試したこと
28
+ class Board {
29
+ static final int SIZE = 8; // 盤面のサイズ
30
+ private Stone cur_turn = Stone.BLACK; // 現在の番(黒が先手)
31
+ private int turn_num = 1; // 通し手数
32
+ private Stone board[][] = new Stone[Board.SIZE][Board.SIZE]; // 盤面の内容
33
+ private static final String BR = System.getProperty("line.separator"); // 改行文字
34
+ private static final Point DIR[] = { new Point(1, 0), new Point(-1, 0), // 探索方向
35
+ new Point(0, 1), new Point(0, -1), new Point(1, 1),
36
+ new Point(1, -1), new Point(-1, 1), new Point(-1, -1)};
20
37
 
38
+ // コンストラクタ
39
+ Board() {
40
+ int i, j;
41
+
42
+ for(i=0; i<SIZE; i++) {
43
+ for(j=0; j<SIZE; j++) {
21
- ここに問題に対して試したことを記載してください。
44
+ board[i][j] = Stone.NONE;
45
+ }
46
+ }
47
+ board[4][4]=board[5][5]=Stone.WHITE;
48
+ board[4][5]=board[5][4]=Stone.BLACK;
49
+
50
+ }
22
51
 
52
+ //盤面の状態を表す文字列を返す
53
+ String getStr() {
54
+ String result = " 1 2 3 4 5 6 7 8" + Board.BR;
55
+
56
+ return result;
57
+ }
58
+ // 現在の番を返す.
59
+ Stone getCurTurn() {
60
+ return this.cur_turn;
61
+ }
62
+ // 通し手数を返す.
63
+ int getTurnNum() {
64
+ return this.turn_num;
65
+ }
66
+ }
67
+
68
+
69
+
70
+
71
+
72
+ //石(NONEは石が置かれていないことを表す)
73
+ enum Stone {
74
+ NONE("・"), BLACK("●"), WHITE("○");
75
+ private String str;
76
+ private Stone(String str) {
77
+ this.str = str;
78
+ }
79
+ // 盤面表示用の文字列を返す.
80
+ String getStr() {
81
+ return this.str;
82
+ }
83
+
84
+ }
85
+
23
86
  ### 補足情報(FW/ツールのバージョンなど)
24
-
25
- ここより詳細な情報を記載しください。
87
+ Eclipse、JUnitで同時テストも行っています
88
+ getCurTurn()、getTurnNum()のテストメソッドの例も教えていただけると助かります。