FizzBuzz

@@[[1からnまでの数字を3の倍数の場合はFizz,
5の倍数の場合はBuzz, 
3の倍数かつ5の倍数の場合はFizzBuzz
に置き換えた一覧を取得]]
do FizzBuzz@(List[String|Integer])(
  n@Integer@>0@'最大値' = 100
)
  1..n.map do(i)
    (i % 3 = 0 'Fizz') & (i % 5 = 0 'Buzz') or i
  DO
spec
  ?(20) = List(1, 2, 'Fizz', 4, 'Buzz', 'Fizz', 7, 8, 'Fizz', 'Buzz',
 11, 'Fizz', 13, 14, 'FizzBuzz', 16, 17, 'Fizz', 19, 'Buzz')
  ?(0) catch? RangeError
DO

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です