I just can't understand why this program is not working

M

Matthew K. Williams

Can someone please tell me what the problem with this program is?

When I run it, I am able to input the values but I am not getting any
results. It just hangs after that. Then I press 'ctrl+c', and I get some
'interrupt' error.
Please help?

Attachments:
http://www.ruby-forum.com/attachment/3906/q2.rb

basically, you are not passing ints, you're passing strings. And they
will never equal.

sidelength.to_i returns the integer representation of sidelength, however
it does not change sidelength.

Likewise noofiterations.

Then when you do your comparison, it will never evaluate as true, so you
never break out of the loop.

Matt
 
P

Prateek Agarwal

Matthew said:
basically, you are not passing ints, you're passing strings. And they
will never equal.

sidelength.to_i returns the integer representation of sidelength,
however
it does not change sidelength.

Likewise noofiterations.

Then when you do your comparison, it will never evaluate as true, so you
never break out of the loop.

Matt



Thanks for the help man. Can you tell me how to input ints?
 
M

Matthew K. Williams

Thanks for the help man. Can you tell me how to input ints?

Here's one way; there's more, I'm sure:

irb(main):005:0> s=gets
1
=> "1\n"
irb(main):006:0> s.class
=> String
irb(main):007:0> s=s.to_i
=> 1
irb(main):008:0> s.class
=> Fixnum


Matt
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,906
Latest member
SkinfixSkintag

Latest Threads

Top