Skip to content

Instantly share code, notes, and snippets.

@syohex
Created October 8, 2011 05:17
Show Gist options
  • Save syohex/1271904 to your computer and use it in GitHub Desktop.
Save syohex/1271904 to your computer and use it in GitHub Desktop.
Emacs lispで fizzbuzz
(require 'cl)
(defun fizzbuzz (n)
(let ((i 1) lst)
(while (<= i n)
(progn
(cond ((= (mod i 15) 0) (push "fizzbuzz" lst))
((= (mod i 5) 0) (push "buzz" lst))
((= (mod i 3) 0) (push "fizz" lst))
(t
(push i lst)))
(setq i (+ i 1))))
(reverse lst)))
ELISP> (fizzbuzz 100)
(1 2 "fizz" 4 "buzz" "fizz" 7 8 "fizz" "buzz" 11 "fizz" 13 14 "fizzbuzz" 16 17 "fizz" 19 "buzz" "fizz" 22 23 "fizz" "buzz" 26 "fizz" 28 29 "fizzbuzz" 31 32 "fizz" 34 "buzz" "fizz" 37 38 "fizz" "buzz" 41 "fizz" 43 44 "fizzbuzz" 46 47 "fizz" 49 "buzz" "fizz" 52 53 "fizz" "buzz" 56 "fizz" 58 59 "fizzbuzz" 61 62 "fizz" 64 "buzz" "fizz" 67 68 "fizz" "buzz" 71 "fizz" 73 74 "fizzbuzz" 76 77 "fizz" 79 "buzz" "fizz" 82 83 "fizz" "buzz" 86 "fizz" 88 89 "fizzbuzz" 91 92 "fizz" 94 "buzz" "fizz" 97 98 "fizz" "buzz")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment