Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Ruby Loops Ruby Loops The Ruby Loop

Help me with this

this is the question --- The repeat method should take a string, and print it a specified number of times. Use loop and break to complete the method. Be sure to do the following:

After printing the value of string, add 1 to the counter variable. Use an if statement together with the break keyword to break out of the loop once counter is equal to times.

loop.rb
def repeat(string, times)
  puts "Enter the number of times : "
  times = gets.chomp.to_i
  fail "times must be 1 or more" if times < 1
  counter = 0
  loop do
    print "enter string : "
    string = gets.chomp
    counter += 1
    if counter == times
      break
    end  
  end
end

1 Answer

Steven Parker
Steven Parker
230,995 Points

This is another case where the code works, but does something different from what the challenge is expecting. When working code doesn't pass the challenge, pause for a moment and then re-read the instructions carefully. You'll be likely to find that it's asking for a different job to be done.

In this case, both "string" and "count" are already provided through the parameters. So you don't need to prompt for, or input either one.

And the one thing you will need to output is the "string" itself, which isn't being done here. But the counter handling is good, so when you fix the input/output issues you should pass.

Thanks again man ! cracked it I overcomplicated it.