niall munnelly wrote: >[snip...] >statement that relies on those variables alone works. it's the last line, >variable * variable, that breaks. > >i wasn't sure if the comments would be superfluous to the mail; i'll be sure >to include them in future questions. > Sure - it's often useless to try to figure out why something doesn't work if it's not all here to examine. If something seems too long to post, the best thing is to try to reproduce the error in a much smaller script, and post the smaller script. As it turns out, the act of condensing your work like that is often exactly what it takes to make you see the answer yourself. In this case though ... 3 is a number and "3" is a string. They're not quite the same thing. So this works: "abc" * 3 (yields the string "abcabcabc") But this doesn't: "abc" * "3" (produces a "type error") Your $enterNumber variable refers to a string, but you can ask Ruby to treat it as a number by applying the "to integer" method, to_i. print $total * $enterNumber.to_i By the way, which of the fm's are you rtfm'ing? Have you run across the User's Guide yet? Mark