Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.ruby > #4083

Re: Help with while condition OR condition

From Joel VanderWerf <joelvanderwerf@gmail.com>
Newsgroups comp.lang.ruby
Subject Re: Help with while condition OR condition
Date 2011-05-07 17:56 -0500
Organization Service de news de lacave.net
Message-ID <4DC5CE2A.9070402@gmail.com> (permalink)
References <fe6567119d5fbe466a7c6d2885d4718a@ruby-forum.com>

Show all headers | View raw


On 05/07/2011 03:37 PM, Bill W. wrote:
> Hi everyone,
>
> This is my first post, so I hope I don't sound too inexperienced..
>
> I'm trying to teach myself Ruby, and have run into an issue with a while
> statement that will break if an input is "exit" or "quit".
> As of right now, it works if exit is input, but not quit
>
> I know I am completely misusing the entire thing, but here is what I
> came up with:
>
> EXIT = "exit"  #need constants since Ruby gets pissed at string literals
> QUIT = "quit"  #in a comparison
>
> print "Input: "
> input = gets
> while input.chomp.downcase != (EXIT || QUIT) #only works for exit

It can help to take apart expressions in irb (interactive ruby):

$ irb
 >> EXIT = "exit"
=> "exit"
 >> QUIT = "quit"
=> "quit"
 >> EXIT || QUIT
=> "exit"
 >> "quit" == (EXIT || QUIT)
=> false

>    #Do something
>
> print "Input: "  #pick up the next input and check it
> input = gets
> end
>
> I know that Ruby has a lot of shortcuts, but if you post any please
> explain how they work (or provide a link to a good explanation.

Something to tinker with:

print "Input: "
while input = gets
   case s = input.chomp.downcase
   when "exit", "quit"
     puts "You wanted to #{s} this mighty fine program?"
     break
   else
     puts "Why do you say '#{s}'?"
     print "Input: "
   end
end
puts "Done."

Back to comp.lang.ruby | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Help with while condition OR condition "Bill W." <sirwillard42@gmail.com> - 2011-05-07 17:37 -0500
  Re: Help with while condition OR condition Steve Klabnik <steve@steveklabnik.com> - 2011-05-07 17:52 -0500
  Re: Help with while condition OR condition Christopher Dicely <cmdicely@gmail.com> - 2011-05-07 17:53 -0500
  Re: Help with while condition OR condition John Feminella <johnf@bitsbuilder.com> - 2011-05-07 17:54 -0500
    Re: Help with while condition OR condition John Feminella <johnf@bitsbuilder.com> - 2011-05-07 17:55 -0500
  Re: Help with while condition OR condition Joel VanderWerf <joelvanderwerf@gmail.com> - 2011-05-07 17:56 -0500
  Re: Help with while condition OR condition Hashmal <jeremypinat@gmail.com> - 2011-05-08 01:06 +0200
  Re: Help with while condition OR condition "Bill W." <sirwillard42@gmail.com> - 2011-05-07 18:38 -0500
  Re: Help with while condition OR condition Josh Cheek <josh.cheek@gmail.com> - 2011-05-07 20:15 -0500
  Re: Help with while condition OR condition 7stud -- <bbxx789_05ss@yahoo.com> - 2011-05-07 21:29 -0500
    Re: Help with while condition OR condition John Feminella <johnf@bitsbuilder.com> - 2011-05-07 21:48 -0500
    Re: Help with while condition OR condition Brian Candler <b.candler@pobox.com> - 2011-05-08 09:45 -0500
      Re: Help with while condition OR condition 7stud -- <bbxx789_05ss@yahoo.com> - 2011-05-09 15:11 -0500
        Re: Help with while condition OR condition Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-05-09 16:42 -0500

csiph-web