On Thu, 5 May 2011 15:45:52 +0900
Super Goat <ruby-forum / sgoat.33mail.com> wrote:

> I am a new Rubyist. I told my friend that I was learning Ruby. He
> asked me how that was going and then gave me a little challenge. His
> challenge, "Write a text game that guesses numbers 0-100". My reply,
> "you mean it picks a number at random, and you guess the number, it
> tells you higher or lower until you get it?". Up to this point I had
> not coded anything in Ruby on my own (aside from the examples in the
> book) and I saw this as a great first challenge. So here is what I
> got. It took me some time. I ran into trouble because I forgot to
> take into consideration the Class of the variables and couldn't
> figure out why the loops weren't working.
> My question to you all... how could I have done this better or do you
> seeing anything that is wrong.  Attached is the code. Thanks for the
> feedback.

Hey, ruby-quiz is back?!
This is how I would have done it... One loop, break-out once you got the
number. Maybe it helps.. Cheers, Martin


magic = rand(101).to_i
puts "Guess the magic number!"

loop do
  print "Choose 0-100> "
  n = gets.to_i
  if !(0..100).include?(n)
    puts "0-100!" 
    next
  end
  puts "Higher!" if n<magic
  puts "Lower!" if n>magic
  break if n==magic
end

puts "You won: #{magic} is the number!"

> 
> Attachments:
> http://www.ruby-forum.com/attachment/6168/100guess.rb
> 
>