Я пытаюсь написать простую хай-лоу программу, которая будет выводить так:
$ ./highlow.rb
Please tell me the max value of the random number: 100
Ok. The random number is generated between 1 and 100.
Make your guess: 50
That's too low. Guess again: 75
That's too high. Guess again: 63
That's too low. Guess again: 68
Correct! You guessed the answer in 4 tries!
Would you like to play again? no
OK. Goodbye.
$
Это код, который у меня есть, но я где-то ошибаюсь. Кажется, иногда работает:
count=0
play = true
while play = true </p>
<pre><code>print "Please tell me the max value of the random number: "
max= gets.to_i
num= rand(max)
puts "Ok. The random number is generated between 1 and " + max.to_s +
"."
print "Make your guess: "
guess=gets.to_i
while guess != num && play != false
if guess > num
print "That's too high. Guess again: "
guess=gets.to_i
count+=1
end
if guess < num
print "That's too low. Guess again: "
guess=gets.to_i
count+=1
else
break
end
end
ставит "Правильно! Вы угадали ответ" + count.to_s + "попытки!"
print «Хотели бы вы сыграть снова?»
ответ = gets.chomp!
если ответ == 'n'
play = false
перерыв
конец
if
answer == 'y'
play = true
end
конец
ставит "ОК. До свидания"
Есть предложения? Куда я иду не так?