From: Peter Szinek Date: 2007-01-21T15:48:26+09:00 Subject: Re: What am i doing wrong? Nick, > number = gets after this line, try to p number to see what does it contain. It contains "4\n" So, there is an ugly "\n" (carriage return) at the end. Let's remove that! number = gets.chop p number now we have "4" That's better. However, this was not the problem, your program will run also without this fix :-) The problem is that (number.to_i + 1) is a FixNum - you need to turn that into a String. So the correct solution reads: 'That is a good number, but ' + (number.to_i + 1).to_s + ' is better!' HTH, Peter __ http://www.rubyrailways.com