From 6bab39bc31624edbc3dd974e6fab94810d71d1a7 Mon Sep 17 00:00:00 2001 From: "Juan J. Martinez" Date: Sun, 28 Apr 2024 08:03:52 +0100 Subject: FizzBuzz solution --- examples/fizzbuzz.fco | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 examples/fizzbuzz.fco (limited to 'examples') diff --git a/examples/fizzbuzz.fco b/examples/fizzbuzz.fco new file mode 100644 index 0000000..68f16ef --- /dev/null +++ b/examples/fizzbuzz.fco @@ -0,0 +1,31 @@ +# returns Fizz if n is divisible by 3, +# Buzz if n is divisible by 5, +# FizzBuzz if n is divisible by 3 and 5, +# n as a string otherwise +def fizzbuzz(n) + if =(+(mod(n 3) mod(n 5)) 0) + "FizzBuzz" + elif =(mod(n 3) 0) + "Fizz" + elif =(mod(n 5) 0) + "Buzz" + else + string(n) + end +end + +# generate a list of integers from n to top +def genlist(n top) + def rec(l n top) + if <=(n top) + @rec(+(l list(n)) +(n 1) top) + else + l + end + end + rec(list() n top) +end + +def main() + display(map(fizzbuzz genlist(1 20))) +end -- cgit v1.2.3