私は、Rubyの学習の一環として、プレーヤーとコンピュータのMastermind(ボードゲーム)プログラムを作っています。配列の要素が別の配列に含まれていないかどうかをチェックする方法は?
マスターマインドがわからない場合、基本的には2人のゲームで、1人のプレイヤーが4色のコード(赤い青色の黄色)を作成し、相手がそのコードを推測しようとします。
ゲームが利用可能な色のセットと、空のコードで初期化します。
@@colours = ["RED", "BLUE", "YELLOW", "GREEN", "ORANGE", "WHITE"]
@code = []
私はこのようなコードを設定するようにユーザーに依頼することができます。
puts "Please set your code:"
code = gets.chomp.downcase.split("")
@code << code
ユーザーがコードを入力ように:rgby
=>code = ["RED", "GREEN", "BLUE", "YELLOW"]
。
(「RED」に、すなわち「R」に変更する方法があるでしょう、それはどこかに私のプログラムで発生したと仮定してください。)
私は、プレイヤーが唯一含ま色を使用できることを確認したいですにあります。つまり、pxgb
は機能しません。全ての入力色が@code
を更新し、@@colours
で発見された場合
:
擬似コードは、線に沿ってであろう。
たり、逆に
任意の入力色が
@@colours
で発見されていない場合は、@code
を更新(そしておそらく他の何かを)しないでください。
これはどのように書きますか?私はエラー処理にあまり慣れていないので、私はそれをやろうとしていましたが、それが最善の方法であるかどうかを知りたいと思っています。
重複は許可されていますか? ''赤 ""、 "赤"、 "緑"、 "緑"] '? – Stefan
重複は許されます。 –
@Stefan、 '' RED '"'の波長はどうですか? –