Sinatra を使用すると、何らかの理由で、number > 1000 の結果がブラウザに出力されません。すぐに「あなたの番号 10000 を推測するのに 0 回の試行が必要でした」と表示されます。例えば。そのため、if ステートメントは until ループを実行しないことで機能しますが、出力はブラウザーに表示されません。うまくいけば、私は本当にばかげたことをしているだけです。
簡単に:「数値は 1000 未満である必要があります。」# これはブラウザに出力されません... なぜ!?
動作しません...
追加クレジット: rand が新しい値のみを試行し、数値ごとに 1 回比較するように、最後に試行された推測を保存する最も簡単な方法は何ですか。例: /lottery/10 が 10 個を超える推測をできないようにします。
以下のコード
get '/lottery/:number' do
i = 0
guess = 0
number = params[:number].to_i
if number > 1000 then
"Number must be under 1000." # This doesn't output to browser... WHY!?
else
until number == guess do
guess = rand(number) + 1
puts "Guess: #{guess} | Attempt: #{i}"
i +=1
end
end
"It took #{i} tries to guess your number #{number}."
end