【Erlang】FizzBuzz
%% fizzbuzz.erl -module(fizzbuzz). -export([run/1]). %% Fizz Buzz リストに変換 convert([]) -> []; convert([H|T]) -> [convert(H)|convert(T)]; convert(H) when (H rem 15) =:= 0 -> 'FizzBuzz'; convert(H) when (H rem 3) =:= 0 -> 'Fizz'; convert(H) when (H rem 5) =:= 0 -> 'Buzz'; convert(H) -> H. %% FizzBuzz実行 run(N) -> convert(lists:seq(1,N)).
%% 実行 fizzbuzz:run(20).
%% 結果 [1,2,'Fizz',4,'Buzz','Fizz',7,8,'Fizz','Buzz',11,'Fizz',13,14,'FizzBuzz',16,17,'Fizz',19,'Buzz']