★★ Java の宿題ここで答えます Part 68 ★★at TECH
★★ Java の宿題ここで答えます Part 68 ★★ - 暇つぶし2ch674:661
09/12/26 20:07:12
>>670
まず前提としてxは横方向、yは縦方向というのは了解できますか?
さらに言うと左はx軸の負の方向、右は正の方向で
yは数学の慣習とは違ってややこしくなりますが、コンピュータの画面表示では
上がy軸の負方向、下がy軸の正方向とするのが一般的だと思います(3Dだとまた変わってきますが2Dなら)。
x++ 右に移動、x-- 左に移動、y++ 下に移動、 y-- 上に移動。了解できますか?

その上で
a b
c d
という盤を使ったゲームか何かがあるとします。
aの位置にいるならx=0, y=0、bならx=1,y=0、cならx=0, y=1、dならx=1,y=1。
盤を2次元配列であらわすときに
char[][] data = {
  { 'a', 'b' },
  {' c', 'd' },
};
とそのまま書けるのが[y][x]法です。
aの位置である x=0,y=0 から x++ すれば右にあるbの位置 x=1,y=0 に行けます。
しかし[x][y]法だと x=0,y=0 から x++ するとcの位置に、つまり下に移動したことになってしまう。
[x][y]法では
char[][] data = {
  { 'a', 'c'},
  { 'b', 'd'},
};
と書かなければいけません。上下と左右を変えなければならず紛らわしいと私は思います
こういうことを言っていたつもりなんですけど解りましたか


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch