<< 12345678910111213141516171819202122232425262728293031>>
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--/--/--(--)--:-- スポンサー広告 edit
思ったより面倒だった
オセロ作成について。

二次元配列なのに、
for(int i = 0; i < 64; i++){
a[c[i]]

とか書いてしまったのが原因。

すんなり行くかと思って軽く考えすぎました。


二次元配列使うと四重ループになりそうだったので、
一次元配列で順番を決めた。
(マスを管理している配列は二次元配列)

配列Bに一次元配列で評価値を格納。
二重(i,j)ループで0~63番までの中で何番目にポイントが高いか算出。
(count変数を定義)
※PG殆ど組んでなかったので、この処理はもっと効率よく書けるかも?

jのループから抜けたところで、
二次元配列Cのcount番目の0番目にcount/8(縦)、1番目にcount%8(横)を代入。

二次元配列B、Cは別のPGで実行して(固定なので)
配列Dをメインプログラムに作成。

二次元配列AのD[i][0]番のD[i][1]番目から石を置けるか順に検索。

for(i=0;i<64;i++){
    if( A[D[i][0]][D[i][1]] == 石置ける ){
    }
}

と、こんな感じです。
結構混乱してしまった・・・。
スポンサーサイト
2009/10/05(月)19:30 PC trackback:0 comment:0 edit
trackback url
http://daihouko.blog4.fc2.com/tb.php/1187-6eed6b33
trackback
comment
post a message






上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。