Name: Anonymous 2012-10-05 7:23
for i in range(110):
pr = ""
pr += "Fizz" * (i%3 == 0)
pr += "Buzz" * (i%5 == 0)
pr += "Bazz" * (i%7 == 0)
print (pr if pr else i)Beat this, faghets.
for i in range(110):
pr = ""
pr += "Fizz" * (i%3 == 0)
pr += "Buzz" * (i%5 == 0)
pr += "Bazz" * (i%7 == 0)
print (pr if pr else i)
fizzbuzzbazz :: [Integer] -> [String]
fizzbuzzbazz = map (finish . bazz . buzz . fizz . start)
where
start n = (n, "")
finish (n, "") = show n
finish (_, s) = s
appendIfDivides q s (n, r)
| n `rem` q == 0 = (n, r ++ s)
| otherwise = (n, r)
fizz = appendIfDivides 3 "Fizz"
buzz = appendIfDivides 5 "Buzz"
bazz = appendIfDivides 7 "Bazz"
main = mapM_ putStrLn $ fizzbuzzbazz [0..109]