ruby · level 1 · unit 7 · lesson 3
- meet it
- guess first
- your turn
- fix it
- nailed it
Tap a green word if you get lost.
meet it
hands the answer back so you can keep it.
So far your methods use puts. That shows a value on the screen, and then it is gone. Your program cannot catch it, keep it or do maths with it.
To return a value, write return and the value. The call then turns into the answer, as if double(4) were the number 8. Store it, show it or use it again.
Ruby also hands back a method's last line by itself, so many Ruby coders leave return out. Careful: puts hands back nil, so a method that ends with puts gives you nothing.
def double(number)
return number * 2
end
answer = double(4)
puts answer
puts double(answer) puts is showing someone your answer, and return is handing it to them.
guess first
This one uses puts instead. What will it show?
Guess before you run it. Wrong guesses are how you learn, and nothing is marked.
def double(number)
puts number * 2
end
answer = double(4)
p answer
your turn
Your turn. Build a dog years machine.
In the first blank, type how many dog years each year counts as. People often say 7. In the second, type your dog's age, real or made up. Then run it.
fix it
Your score should double, but it stays at 5. Fix it!
- The method works and hands back 10. But does anything catch that answer?
- Line 5 calls double, but the answer it hands back is dropped on the floor. Store it in a variable.
- Change line 5 to score = double(score), then press run.
nailed it
your methods can hand back answers. :D
putsshows a value.returnhands it back to use.- A method hands back its last line by itself.
- Catch the answer in a variable to keep it.
new words in your collection
- return
This lesson isn’t saved. A free account remembers every lesson you finish.