fork download
  1. (defun fortunecookie ()
  2. (princ "名前または学籍番号を入力:")
  3. (let* ((id (read-line))
  4. ;; 現在の日付(YYYYMMDD)を取得して文字列にする
  5. (date-str (format nil "~4,'0d~2,'0d~2,'0d"
  6. (+ 1900 (nth 5 (decode-universal-time (get-universal-time))))
  7. (nth 4 (decode-universal-time (get-universal-time)))
  8. (nth 3 (decode-universal-time (get-universal-time)))))
  9. ;; 入力と日付を結合
  10. (combined (concatenate 'string id date-str))
  11. ;; 合計コードポイントをシードとして使用
  12. (seed (reduce #'+ (map 'list #'char-code combined)))
  13. ;; 結果リスト
  14. (result (nth (mod seed 5)
  15. '("大吉!挑戦を続けよう"
  16. "中吉!今日は集中の日"
  17. "小吉!まずは一歩"
  18. "吉!粘り勝ちを目指そう"
  19. "凶…でも明日がある!"))))
  20. ;; 結果を表示
  21. (format t "結果(~A):~A~%" date-str result)))
  22.  
Success #stdin #stdout #stderr 0.01s 9568KB
stdin
202207853
stdout
Standard output is empty
stderr
Warning: reserving address range 0x80000c0000...0x1fffffffffff that contains memory mappings. clisp might crash later!
Memory dump:
  0x8000000000 - 0x80000bffff
  0x14e0db200000 - 0x14e0db4e4fff
  0x14e0db600000 - 0x14e0db602fff
  0x14e0db603000 - 0x14e0db801fff
  0x14e0db802000 - 0x14e0db802fff
  0x14e0db803000 - 0x14e0db803fff
  0x14e0db815000 - 0x14e0db839fff
  0x14e0db83a000 - 0x14e0db9acfff
  0x14e0db9ad000 - 0x14e0db9f5fff
  0x14e0db9f6000 - 0x14e0db9f8fff
  0x14e0db9f9000 - 0x14e0db9fbfff
  0x14e0db9fc000 - 0x14e0db9fffff
  0x14e0dba00000 - 0x14e0dba03fff
  0x14e0dba04000 - 0x14e0dbc03fff
  0x14e0dbc04000 - 0x14e0dbc04fff
  0x14e0dbc05000 - 0x14e0dbc05fff
  0x14e0dbc43000 - 0x14e0dbc44fff
  0x14e0dbc45000 - 0x14e0dbc54fff
  0x14e0dbc55000 - 0x14e0dbc88fff
  0x14e0dbc89000 - 0x14e0dbdbffff
  0x14e0dbdc0000 - 0x14e0dbdc0fff
  0x14e0dbdc1000 - 0x14e0dbdc3fff
  0x14e0dbdc4000 - 0x14e0dbdc4fff
  0x14e0dbdc5000 - 0x14e0dbdc6fff
  0x14e0dbdc7000 - 0x14e0dbdc7fff
  0x14e0dbdc8000 - 0x14e0dbdc9fff
  0x14e0dbdca000 - 0x14e0dbdcafff
  0x14e0dbdcb000 - 0x14e0dbdcbfff
  0x14e0dbdcc000 - 0x14e0dbdccfff
  0x14e0dbdcd000 - 0x14e0dbddafff
  0x14e0dbddb000 - 0x14e0dbde8fff
  0x14e0dbde9000 - 0x14e0dbdf5fff
  0x14e0dbdf6000 - 0x14e0dbdf9fff
  0x14e0dbdfa000 - 0x14e0dbdfafff
  0x14e0dbdfb000 - 0x14e0dbdfbfff
  0x14e0dbdfc000 - 0x14e0dbe01fff
  0x14e0dbe02000 - 0x14e0dbe03fff
  0x14e0dbe04000 - 0x14e0dbe04fff
  0x14e0dbe05000 - 0x14e0dbe05fff
  0x14e0dbe06000 - 0x14e0dbe06fff
  0x14e0dbe07000 - 0x14e0dbe34fff
  0x14e0dbe35000 - 0x14e0dbe43fff
  0x14e0dbe44000 - 0x14e0dbee9fff
  0x14e0dbeea000 - 0x14e0dbf80fff
  0x14e0dbf81000 - 0x14e0dbf81fff
  0x14e0dbf82000 - 0x14e0dbf82fff
  0x14e0dbf83000 - 0x14e0dbf96fff
  0x14e0dbf97000 - 0x14e0dbfbefff
  0x14e0dbfbf000 - 0x14e0dbfc8fff
  0x14e0dbfc9000 - 0x14e0dbfcafff
  0x14e0dbfcb000 - 0x14e0dbfd0fff
  0x14e0dbfd1000 - 0x14e0dbfd3fff
  0x14e0dbfd6000 - 0x14e0dbfd6fff
  0x14e0dbfd7000 - 0x14e0dbfd7fff
  0x14e0dbfd8000 - 0x14e0dbfd8fff
  0x14e0dbfd9000 - 0x14e0dbfd9fff
  0x14e0dbfda000 - 0x14e0dbfdafff
  0x14e0dbfdb000 - 0x14e0dbfe1fff
  0x14e0dbfe2000 - 0x14e0dbfe4fff
  0x14e0dbfe5000 - 0x14e0dbfe5fff
  0x14e0dbfe6000 - 0x14e0dc006fff
  0x14e0dc007000 - 0x14e0dc00efff
  0x14e0dc00f000 - 0x14e0dc00ffff
  0x14e0dc010000 - 0x14e0dc010fff
  0x14e0dc011000 - 0x14e0dc011fff
  0x559f8a169000 - 0x559f8a259fff
  0x559f8a25a000 - 0x559f8a363fff
  0x559f8a364000 - 0x559f8a3c3fff
  0x559f8a3c5000 - 0x559f8a3f3fff
  0x559f8a3f4000 - 0x559f8a424fff
  0x559f8a425000 - 0x559f8a428fff
  0x559f8a4b5000 - 0x559f8a4d5fff
  0x7ffd405c0000 - 0x7ffd405e0fff
  0x7ffd405e1000 - 0x7ffd405e4fff
  0x7ffd405e5000 - 0x7ffd405e6fff