From: Louis J Scoras Date: 2006-06-24T03:46:40+09:00 Subject: Re: Queston: array.push Hi Stuart; This is similar to the problem you were having earlier. You have to be very careful about the order in which you do things. Inside your loop, you are asking for another value before you push the current one into the array. You could make that work, but it's probably easier if you switch the two. Also, you are calling *gets* too many times. Remember, every time you do that the user will need to input a new string > while gets.chomp != '' In your code here you are asking for a value. You check it correctly, but what happens to the value? You aren't binding it to anything, so the code looses that string. Make sure you're assigning everything somewhere with = > another = gets.chomp > myarray.push(another) > end Here's what I was talking about above. You are asking for a new value before you store the old one. That might be okay, but not if you prime the loop input as you've done. This will make you loose your first value also. In the while condition, you've already got a value, which you stored in the variable "another". So just check that for an empty string: while another != '' Then switch your two lines so that you store the good value you just checked for: myarray.push(another) another = gets.chomp end Then you should be good to go. Keep at it, and happy ruby hacking :) -- Lou.