$ include "seed7_05.s7i"; const func string: menuSelect (in array string: items, in string: prompt) is func result var string: selection is ""; local var string: item is ""; var integer: index is 0; var integer: num is 0; begin if length(items) <> 0 then repeat for item key index range items do writeln(index <& ". " <& item); end for; write(prompt); readln(num); until num >= 1 and num <= length(items); selection := items[num]; end if end func; const array string: items is [] ("fee fie", "huff and puff", "mirror mirror", "tick tock"); const string: prompt is "Which is from the three pigs? "; const proc: main is func begin writeln("You chose " <& menuSelect(items, prompt)); end func;