fork download
  1. (defun fortunecookie ()
  2. (princ "名前または学籍番号を入力:")
  3. (let* ((id (read-line))
  4. (now (multiple-value-list (decode-universal-time (get-universal-time))))
  5. (year (nth 5 now))
  6. (month (nth 4 now))
  7. (day (nth 3 now))
  8. ;; YYYYMMDD の文字列
  9. (date-str (format nil "~4,'0D~2,'0D~2,'0D" year month day))
  10. ;; ID + 日付をまとめたシード文字列
  11. (full-seed-str (concatenate 'string id date-str))
  12. (char-codes (map 'list #'char-code full-seed-str))
  13. (seed (reduce #'+ char-codes :initial-value 0))
  14. (fortunes '("大吉!挑戦を続けよう"
  15. "中吉!今日は集中の日"
  16. "小吉!まずは一歩"
  17. "吉!粘り勝ちを目指そう"
  18. "凶…でも明日がある!"))
  19. (result (nth (mod seed (length fortunes)) fortunes)))
  20. (format t "~%結果:~A~%" result)))
  21.  
Success #stdin #stdout #stderr 0.02s 9544KB
stdin
工藤嘉悦
stdout
Standard output is empty
stderr
Warning: reserving address range 0x80000c0000...0x1fffffffffff that contains memory mappings. clisp might crash later!
Memory dump:
  0x8000000000 - 0x80000bffff
  0x14fb3dc00000 - 0x14fb3dee4fff
  0x14fb3e015000 - 0x14fb3e039fff
  0x14fb3e03a000 - 0x14fb3e1acfff
  0x14fb3e1ad000 - 0x14fb3e1f5fff
  0x14fb3e1f6000 - 0x14fb3e1f8fff
  0x14fb3e1f9000 - 0x14fb3e1fbfff
  0x14fb3e1fc000 - 0x14fb3e1fffff
  0x14fb3e200000 - 0x14fb3e202fff
  0x14fb3e203000 - 0x14fb3e401fff
  0x14fb3e402000 - 0x14fb3e402fff
  0x14fb3e403000 - 0x14fb3e403fff
  0x14fb3e480000 - 0x14fb3e48ffff
  0x14fb3e490000 - 0x14fb3e4c3fff
  0x14fb3e4c4000 - 0x14fb3e5fafff
  0x14fb3e5fb000 - 0x14fb3e5fbfff
  0x14fb3e5fc000 - 0x14fb3e5fefff
  0x14fb3e5ff000 - 0x14fb3e5fffff
  0x14fb3e600000 - 0x14fb3e603fff
  0x14fb3e604000 - 0x14fb3e803fff
  0x14fb3e804000 - 0x14fb3e804fff
  0x14fb3e805000 - 0x14fb3e805fff
  0x14fb3e925000 - 0x14fb3e928fff
  0x14fb3e929000 - 0x14fb3e929fff
  0x14fb3e92a000 - 0x14fb3e92bfff
  0x14fb3e92c000 - 0x14fb3e92cfff
  0x14fb3e92d000 - 0x14fb3e92dfff
  0x14fb3e92e000 - 0x14fb3e92efff
  0x14fb3e92f000 - 0x14fb3e93cfff
  0x14fb3e93d000 - 0x14fb3e94afff
  0x14fb3e94b000 - 0x14fb3e957fff
  0x14fb3e958000 - 0x14fb3e95bfff
  0x14fb3e95c000 - 0x14fb3e95cfff
  0x14fb3e95d000 - 0x14fb3e95dfff
  0x14fb3e95e000 - 0x14fb3e963fff
  0x14fb3e964000 - 0x14fb3e965fff
  0x14fb3e966000 - 0x14fb3e966fff
  0x14fb3e967000 - 0x14fb3e967fff
  0x14fb3e968000 - 0x14fb3e968fff
  0x14fb3e969000 - 0x14fb3e996fff
  0x14fb3e997000 - 0x14fb3e9a5fff
  0x14fb3e9a6000 - 0x14fb3ea4bfff
  0x14fb3ea4c000 - 0x14fb3eae2fff
  0x14fb3eae3000 - 0x14fb3eae3fff
  0x14fb3eae4000 - 0x14fb3eae4fff
  0x14fb3eae5000 - 0x14fb3eaf8fff
  0x14fb3eaf9000 - 0x14fb3eb20fff
  0x14fb3eb21000 - 0x14fb3eb2afff
  0x14fb3eb2b000 - 0x14fb3eb2cfff
  0x14fb3eb2d000 - 0x14fb3eb32fff
  0x14fb3eb33000 - 0x14fb3eb35fff
  0x14fb3eb38000 - 0x14fb3eb38fff
  0x14fb3eb39000 - 0x14fb3eb39fff
  0x14fb3eb3a000 - 0x14fb3eb3afff
  0x14fb3eb3b000 - 0x14fb3eb3bfff
  0x14fb3eb3c000 - 0x14fb3eb3cfff
  0x14fb3eb3d000 - 0x14fb3eb43fff
  0x14fb3eb44000 - 0x14fb3eb46fff
  0x14fb3eb47000 - 0x14fb3eb47fff
  0x14fb3eb48000 - 0x14fb3eb68fff
  0x14fb3eb69000 - 0x14fb3eb70fff
  0x14fb3eb71000 - 0x14fb3eb71fff
  0x14fb3eb72000 - 0x14fb3eb72fff
  0x14fb3eb73000 - 0x14fb3eb73fff
  0x556e89862000 - 0x556e89952fff
  0x556e89953000 - 0x556e89a5cfff
  0x556e89a5d000 - 0x556e89abcfff
  0x556e89abe000 - 0x556e89aecfff
  0x556e89aed000 - 0x556e89b1dfff
  0x556e89b1e000 - 0x556e89b21fff
  0x556e8b14a000 - 0x556e8b16afff
  0x7fff92049000 - 0x7fff92069fff
  0x7fff9219b000 - 0x7fff9219efff
  0x7fff9219f000 - 0x7fff921a0fff