A
Ashley Wharton
[Note: parts of this message were removed to make it a legal post.]
Hi - sorry to belabour the point, but I would appreciate any help or
guidance that anyone could give relative to the preferred way of writing
Ruby code. Thanks to some help earlier in the week from ruby-talk and from
Kastner I now have two additional ways of achieving the same result. I am
attempting to grasp the concept objects as well as learning ruby. Which
syntax (or style) should I focus on, or does it not matter. From my limited
understanding Kastner's example would seem to be a cleaner use of objects,
(or am I missing the point). Thanks for any help.
ashley
My starting point:
-----------------------------------------------------------
def require_number number_cur
puts number_cur
reply = gets.to_i
while reply < 100000
reply = reply + 1
puts reply
end
if reply > 100
true
require_number 'Please enter a number less than 100: '
end
end
require_number 'Enter a number: '
-------------------------------------------------------------
Modified with input from Ruby-Talk
def require_number(prompt, max)
print prompt
reply = gets.to_i
if reply >= max then reply = require_number "Please enter a number
less than #{max}: ", max end
reply.upto(max) { |x| puts x }
end
require_number 'Please enter a number: ', 100000
---------------------------------------------------------------------
With further help from Kastner:
MAX = 100000
def get_number(prompt = "")
print prompt
# ruby methods return the last value
gets.to_i
end
def print_from_to(start, stop)
start.upto(stop) do |number|
puts number
end
end
loop do
number = get_number "Please enter a number less than #{MAX}: "
next if number >= MAX
print_from_to(number, MAX)
break
end
-----------------------------------------------------------------------
Hi - sorry to belabour the point, but I would appreciate any help or
guidance that anyone could give relative to the preferred way of writing
Ruby code. Thanks to some help earlier in the week from ruby-talk and from
Kastner I now have two additional ways of achieving the same result. I am
attempting to grasp the concept objects as well as learning ruby. Which
syntax (or style) should I focus on, or does it not matter. From my limited
understanding Kastner's example would seem to be a cleaner use of objects,
(or am I missing the point). Thanks for any help.
ashley
My starting point:
-----------------------------------------------------------
def require_number number_cur
puts number_cur
reply = gets.to_i
while reply < 100000
reply = reply + 1
puts reply
end
if reply > 100
true
require_number 'Please enter a number less than 100: '
end
end
require_number 'Enter a number: '
-------------------------------------------------------------
Modified with input from Ruby-Talk
def require_number(prompt, max)
print prompt
reply = gets.to_i
if reply >= max then reply = require_number "Please enter a number
less than #{max}: ", max end
reply.upto(max) { |x| puts x }
end
require_number 'Please enter a number: ', 100000
---------------------------------------------------------------------
With further help from Kastner:
MAX = 100000
def get_number(prompt = "")
print prompt
# ruby methods return the last value
gets.to_i
end
def print_from_to(start, stop)
start.upto(stop) do |number|
puts number
end
end
loop do
number = get_number "Please enter a number less than #{MAX}: "
next if number >= MAX
print_from_to(number, MAX)
break
end
-----------------------------------------------------------------------