2017-04-09 7 views
-1

私は単純なブラックジャックのゲームに取り組んでおり、ディーラーに応じて変数 'dealer_value3'の値を 'A'文字列から11または1の整数に変更しようとしていますハンド。私の現在のコードは私にエラーを与え続けます。Rubyで変数の値を変更するには

if dealer_value3 == "A" 
if dealer_hand1 < 11 
    return dealer_value3 = 11 
else 
    return dealer_value3 = 1 
end 
end 
+1

どのようなエラーが生成されますか? 'dealer_hand1'変数の値は何ですか? – Wikiti

+0

このコードは意味を持ちません。あなたはローカル変数に代入してからすぐにメソッドを終了し、すべてのローカル変数をスコープの外に出す* return * 'return'を返します。あなたのコードは 'if dealer_value3 ==" Aと同等で、次にdealer_hand1 <11 then 11 else 1 end end'を返します。 –

+1

あなたのコードをより多く表示できますか?最初にdealer_value3が宣言されたのはどこですか? – eiko

答えて

0

他のコードの構造外の変数について考えるのが最善です。

Rubyの変数には、ほとんどコード/構文が必要ありません。

変数を作成するには、その名前に=という符号を付けるか、アサーションと値を呼び出します。

count = 1

当社の変数名はcountであり、その値が1

に割り当てられている我々が時間内にanypointで、カウントを再割り当てすることができます(それが範囲内かどう()はまだこれをグーグルはありません)

count = 1 
puts count # => 1 

count = "bananas" 
puts count #=> "bananas" 

あなたの特定の問題を引き起こしているものはreturnです。

def a_method 
    return 1 
end 

puts a_method # => 1 
関連する問題