fork download
  1. (defun fortunecookie ()
  2. (let* ((id (read-line))
  3. (time-list (multiple-value-list (decode-universal-time (get-universal-time))))
  4. (year (+ 1900 (nth 5 time-list)))
  5. (month (nth 4 time-list))
  6. (day (nth 3 time-list))
  7. (date-str (format nil "~4,'0d~2,'0d~2,'0d" year month day))
  8. (combined (concatenate 'string id date-str))
  9. (seed (reduce #'+ (map 'list #'char-code combined)))
  10. (result (nth (mod seed 5)
  11. '("大吉!挑戦を続けよう"
  12. "中吉!今日は集中の日"
  13. "小吉!まずは一歩"
  14. "吉!粘り勝ちを目指そう"
  15. "凶…でも明日がある!"))))
  16. (format t "入力:~A~%結果(~A):~A~%" id date-str result)))
  17.  
  18. (fortunecookie)
  19.  
Success #stdin #stdout #stderr 0.01s 9508KB
stdin
工藤嘉悦
stdout
入力:工藤嘉悦
結果(39250617):小吉!まずは一歩
stderr
Warning: reserving address range 0x80000c0000...0x1fffffffffff that contains memory mappings. clisp might crash later!
Memory dump:
  0x8000000000 - 0x80000bffff
  0x14d9dd000000 - 0x14d9dd2e4fff
  0x14d9dd415000 - 0x14d9dd439fff
  0x14d9dd43a000 - 0x14d9dd5acfff
  0x14d9dd5ad000 - 0x14d9dd5f5fff
  0x14d9dd5f6000 - 0x14d9dd5f8fff
  0x14d9dd5f9000 - 0x14d9dd5fbfff
  0x14d9dd5fc000 - 0x14d9dd5fffff
  0x14d9dd600000 - 0x14d9dd602fff
  0x14d9dd603000 - 0x14d9dd801fff
  0x14d9dd802000 - 0x14d9dd802fff
  0x14d9dd803000 - 0x14d9dd803fff
  0x14d9dd880000 - 0x14d9dd88ffff
  0x14d9dd890000 - 0x14d9dd8c3fff
  0x14d9dd8c4000 - 0x14d9dd9fafff
  0x14d9dd9fb000 - 0x14d9dd9fbfff
  0x14d9dd9fc000 - 0x14d9dd9fefff
  0x14d9dd9ff000 - 0x14d9dd9fffff
  0x14d9dda00000 - 0x14d9dda03fff
  0x14d9dda04000 - 0x14d9ddc03fff
  0x14d9ddc04000 - 0x14d9ddc04fff
  0x14d9ddc05000 - 0x14d9ddc05fff
  0x14d9ddd3c000 - 0x14d9ddd3ffff
  0x14d9ddd40000 - 0x14d9ddd40fff
  0x14d9ddd41000 - 0x14d9ddd42fff
  0x14d9ddd43000 - 0x14d9ddd43fff
  0x14d9ddd44000 - 0x14d9ddd44fff
  0x14d9ddd45000 - 0x14d9ddd45fff
  0x14d9ddd46000 - 0x14d9ddd53fff
  0x14d9ddd54000 - 0x14d9ddd61fff
  0x14d9ddd62000 - 0x14d9ddd6efff
  0x14d9ddd6f000 - 0x14d9ddd72fff
  0x14d9ddd73000 - 0x14d9ddd73fff
  0x14d9ddd74000 - 0x14d9ddd74fff
  0x14d9ddd75000 - 0x14d9ddd7afff
  0x14d9ddd7b000 - 0x14d9ddd7cfff
  0x14d9ddd7d000 - 0x14d9ddd7dfff
  0x14d9ddd7e000 - 0x14d9ddd7efff
  0x14d9ddd7f000 - 0x14d9ddd7ffff
  0x14d9ddd80000 - 0x14d9dddadfff
  0x14d9dddae000 - 0x14d9dddbcfff
  0x14d9dddbd000 - 0x14d9dde62fff
  0x14d9dde63000 - 0x14d9ddef9fff
  0x14d9ddefa000 - 0x14d9ddefafff
  0x14d9ddefb000 - 0x14d9ddefbfff
  0x14d9ddefc000 - 0x14d9ddf0ffff
  0x14d9ddf10000 - 0x14d9ddf37fff
  0x14d9ddf38000 - 0x14d9ddf41fff
  0x14d9ddf42000 - 0x14d9ddf43fff
  0x14d9ddf44000 - 0x14d9ddf49fff
  0x14d9ddf4a000 - 0x14d9ddf4cfff
  0x14d9ddf4f000 - 0x14d9ddf4ffff
  0x14d9ddf50000 - 0x14d9ddf50fff
  0x14d9ddf51000 - 0x14d9ddf51fff
  0x14d9ddf52000 - 0x14d9ddf52fff
  0x14d9ddf53000 - 0x14d9ddf53fff
  0x14d9ddf54000 - 0x14d9ddf5afff
  0x14d9ddf5b000 - 0x14d9ddf5dfff
  0x14d9ddf5e000 - 0x14d9ddf5efff
  0x14d9ddf5f000 - 0x14d9ddf7ffff
  0x14d9ddf80000 - 0x14d9ddf87fff
  0x14d9ddf88000 - 0x14d9ddf88fff
  0x14d9ddf89000 - 0x14d9ddf89fff
  0x14d9ddf8a000 - 0x14d9ddf8afff
  0x5577758a5000 - 0x557775995fff
  0x557775996000 - 0x557775a9ffff
  0x557775aa0000 - 0x557775afffff
  0x557775b01000 - 0x557775b2ffff
  0x557775b30000 - 0x557775b60fff
  0x557775b61000 - 0x557775b64fff
  0x557777184000 - 0x5577771a4fff
  0x7ffd30548000 - 0x7ffd30568fff
  0x7ffd305e1000 - 0x7ffd305e4fff
  0x7ffd305e5000 - 0x7ffd305e6fff