2009/05/02

[Gauce][Scheme]FizzBuzz

なんとなくFizzBuzzを思い出して。

こんなんだっけ?FizzBuzzの問題自体、記憶があいまいだけど。

 

(define fizzbuzz
  (lambda (l)
    (map
     (lambda (n)
       (cond
        ((zero? (modulo n 15)) "FizzBuzz")
        ((zero? (modulo n 3)) "Fizz")
        ((zero? (modulo n 5)) "Buzz")
        (else n)))
     l)))

 

(1 2 #0="Fizz" 4 #1="Buzz" #0# 7 8 #0# #1# 11 #0# 13 14 #2="FizzBuzz" 16 17 #0# 19 #1# #0# 22 23 #0# #1# 26 #0# 28 29 #2# 31 32 #0# 34 #1# #0# 37 38 #0# #1# 41 #0# 43 44 #2# 46 47 #0# 49 #1# #0# 52 53 #0# #1# 56 #0# 58 59 #2# 61 62 #0# 64 #1# #0# 67 68 #0# #1# 71 #0# 73 74 #2# 76 77 #0# 79 #1# #0# 82 83 #0# #1# 86 #0# 88 89 #2# 91 92 #0# 94 #1# #0# 97 98 #0# #1#)

 

そういえばSchemeではまだFizzBuzz書いてなかったような気がして・・・。でもどこかで見覚えがある。「プログラミングGauche」かな?

 

0 件のコメント:

コメントを投稿