私はこのコードを持っている:私のマップはなぜですか?奇妙なループ演技?
#test document for my pseudo code
userInput = "go"
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
while userInput != "exit"
arr.each do |first|
first.map! do |second|
if userInput.to_i == second
first[second] = "X"
end
print "|#{second}|"
end
print "\n"
end
puts "Type quit for exiting game, or a number"
userInput = gets.chomp
end
私は数でこれと種類を実行する場合、この問題が発生した:
を私はマップを変更した場合は!それをマップするには、次の反復で、マップは単に新しい配列を返すので、配列の保存された "X"は消えてしまいます。 mapを使って既存の値の値を変更したい!なぜそれが変わったのですか?
"[ask]"と "[mcve]"とリンク先のページをお読みください。期待される成果は?イメージを削除し、テキストをコピーして質問に貼り付け、適切に書式設定します。イメージへのリンクがあなたの質問を壊す場合、/それほど意味をなさないでしょう。質問にもっと役に立つタイトルを記入してください。あなたが質問に入れた努力は、他人があなたを助けることを奨励します。覚えておいて、SOはディスカッションリストでも、ツイートしたくもありません。あなたは参考書を書くのを手伝っています。 –
こんにちは、 私はあなたが提供したリンクを読みました。今から私はこの例を将来の質問に使用します。 Thxそれをもたらすために。 素敵な一日を! –
この質問にもその情報を使用する必要があります。なぜなら、要件を満たす良い仕事をしていないからです。 –