[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Re: how to see if a variable matches an array element?

Patrick Spence

8/9/2006 7:26:00 PM

John Fink wrote:
> Hey folks,
>
> I'm knocking together a Rock, Paper, Scissors Ruby script to teach
> myself
> more Ruby deliciousness, and I've got it working, except I want to
> compare a
> variable to an array element (one of ["R", "P", "S"]) and have the
> program
> die if it doesn't match up.
>
> Here's the relevant part of my script (note the rochambo function is
> defined
> earlier in the script, and is really verbose, so I clipped it out):
>
> choices = %w{R P S}
> puts "Your choice? R,P,S"
> userchoice = gets.chomp.upcase
> computerchoice = choices[rand(choices.length)]
> puts "You picked " + userchoice + "!"
> puts "Computer picked " + computerchoice + "!"
> puts "FIGHT!"
> rochambo(userchoice, computerchoice)
>
>
> Basically I want to have the program die if the userchoice variable
> doesn't
> equal one of the elements in the choices array, and it should be easy,
> but I
> am hitting my head against a wall.
>
> jf

irb(main):031:0> choices = %w{R P S}
=> ["R,P,S"]
irb(main):032:0> computerChoice = gets.chomp.upcase()
y
=> "Y"
irb(main):033:0> choices.include?(computerChoice)
=> false
irb(main):034:0> computerChoice = gets.chomp.upcase()
r
=> "R"
irb(main):035:0> choices.include?(computerChoice)
=> true

--
Posted via http://www.ruby-....