>>783
1) 盤のデータ構造に一貫性がない
初期状態と思われる述語 board/2 を見ると、X軸では長さ 7 の固定長配列を表現しているが、
もう一つの盤 myboard/1 を見ると可変長配列で表現している
盤はある定数を持つ2次元配列なのだから、X軸とY軸の表現方法は一貫性を持つべき
2) 石の表現が適切ではない
石にはプレーヤの石とコンピュータの石の2種類があり、おそらくそれらを 1 と 2 という
整数で表現している
Prolog であれば文字アトムがあるから、それらは player と computer で表現できる
タイピングが面倒と感じたなら、p と c でもかまわない
たとえば Prolog と同じ動的型付け言語の Ruby ならば、
まよわずシンボル :player と :computer で表現する発想になっていたはずだ
あるいは静的型付け言語の Standard ML であれば、以下に示す直和型として定義する
datatype stone = Player | Computer
対象とする概念に応じて適切なデータ表現を選択するのは、
(Prolog に限らず)あらゆる言語におけるプログラミングの基本だ
3) 値域の検査に一貫性がない
座標値について、述語 get_at/3 では上限だけ検査して下限を検査していない(もし N が負であれば?)
同様に述語 get_stone/4 ではY軸の座標値について上限だけが検査されていない
検査しない方針ならそれどよし、検査するならするで想定できるすべてのケースを検査すべき
いきあたりばったりのコーディングはコードを品質させ、デバッグを難しくする要因になる
(長いので、次レス以降へ続く)
探検
【論理】Prolog【初心者】
■ このスレッドは過去ログ倉庫に格納されています
785デフォルトの名無しさん
2014/10/31(金) 22:56:49.16ID:uqHhdnYm■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- VIP過疎すぎてつまらない😭
- 中国人、ガチ超正論。「日本人がアイヌに対してやったことを『問題ない』とするなら、中国が日本人に同じことをしても文句ないだろう?」 [314039747]
- 自衛隊員「クマ被害を防ぐ活動、アルバイトに使われたということ。自衛隊の強み活かしてない。猟師のような仕事を期待されるのは無理」 [932029429]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 木曜日のんなっしょい❗(・o・🍬)仕放題スレ🏡
- 【悲報】日本共産党、ツイッター速報にブチギレ法的措置WWWWWWWWWWWWWWWWWWWWWWWWWWWW [935793931]
