FizzBuzz: Difference between revisions

64 bytes removed ,  3 months ago
(Add Refal)
Line 12,160:
# for a certain requested number (default is 100).
 
defn main(&[count=100 impl]=1):
count =: count || 100
impl =: impl || "1"
fizzbuzz =: "fizzbuzz-$impl"
 
when-not ENV."'YS_TEST"':
say: "Running function '$fizzbuzz' with count=$count"
 
function =: resolve(fizzbuzz.symbol(fizzbuzz))
result =: function(count)
 
Line 12,181 ⟶ 12,179:
fn(x):
cond:
zero?(mod(x % 15)): "'FizzBuzz"'
zero?(mod(x % 5)): "'Buzz"'
zero?(mod(x % 3)): "'Fizz"'
=>: x
=>: 1 .. n
Line 12,191 ⟶ 12,189:
if (i > n):
=>: l
recur inc(i):
inc: i
conj l:
cond:
zero?(mod(i % 15)): "'FizzBuzz"'
zero?(mod(i % 5)): "'Buzz"'
zero?(mod(i % 3)): "'Fizz"'
=>: i
 
Line 12,205 ⟶ 12,202:
s =:
str:
when zero?(mod(x % 3)): "'Fizz"'
when=>: (zero?(mod(x % 5)): "&& 'Buzz"') || nil
if empty?(s): x s
rng: 1 n
55

edits