September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
|
|
@ -1,23 +1,26 @@
|
|||
def select(prompt, items)
|
||||
return "" if items.empty?
|
||||
loop do
|
||||
items.each_index {|i| puts "#{i}. #{items[i]}"}
|
||||
print "#{prompt}: "
|
||||
begin
|
||||
answer = Integer(gets)
|
||||
rescue ArgumentError
|
||||
redo
|
||||
def select(prompt, items = [])
|
||||
if items.empty?
|
||||
''
|
||||
else
|
||||
answer = -1
|
||||
until (0...items.length).cover?(answer)
|
||||
items.each_with_index {|i,j| puts "#{j}. #{i}"}
|
||||
print "#{prompt}: "
|
||||
begin
|
||||
answer = Integer(gets)
|
||||
rescue ArgumentError
|
||||
redo
|
||||
end
|
||||
end
|
||||
return items[answer] if (0...items.length).cover?(answer)
|
||||
items[answer]
|
||||
end
|
||||
end
|
||||
|
||||
# test empty list
|
||||
response = select("Which is empty", [])
|
||||
puts "empty list returns: >#{response}<"
|
||||
puts
|
||||
response = select('Which is empty')
|
||||
puts "empty list returns: >#{response}<\n"
|
||||
|
||||
# "real" test
|
||||
items = ['fee fie', 'huff and puff', 'mirror mirror', 'tick tock']
|
||||
response = select("Which is from the three pigs", items)
|
||||
response = select('Which is from the three pigs', items)
|
||||
puts "you chose: >#{response}<"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue