RosettaCodeData/Task/Menu/Nanoquery/menu.nanoquery

35 lines
684 B
Plaintext

def _menu($items)
for ($i = 0) ($i < len($items)) ($i = $i + 1)
println " " + $i + ") " + $items[$i]
end
end
def _ok($reply, $itemcount)
try
$n = int($reply)
return (($n >= 0) && ($n < $itemcount))
catch
return $false
end
end
def selector($items, $pmt)
// Prompt to select an item from the items
if (len($items) = 0)
return ""
end
$reply = -1
$itemcount = len($items)
while !_ok($reply, $itemcount)
_menu($items)
println $pmt
$reply = int(input())
end
return $items[$reply]
end
$items = list()
append $items "fee fie" "huff and puff" "mirror mirror" "tick tock"
$item = selector($items, "Which is from the three pigs: ")
println "You chose: " + $item