by shigemk2

当面は技術的なことしか書かない

リスト遊び 3-4 整数の比較

前回
リスト遊び 3-3 eq - by shigemk2

2つの整数を比較するときは、eqの代わりに=や/=などの関数を利用する。
下記はそれらのサンプルだが、もちろん整数しか比較できず、
文字列を引数にしてもエラーになる。
だからphprubyにおける比較演算子のような使いかたはできない。

(defun Minusp (n)
  (cond((< n 0) t)
       (t nil)))
=> Minusp
(Minusp 5)
=>nil
(Minusp -5)
=>t

(defun leap (n)
  (cond((/= (% n 4) 0) nil)
       ((/= (% n 100) 0) t)
       ((= (% n 400) 0) t)
       (t nil)))
=>leap
(leap 3000)
=>nil
(leap 2996)
=>t
(leap 2000)
=>t
(leap 2221)
=>nil
;; エラー
(leap 'hoge)

リスト遊び―Emacsで学ぶLispの世界 (ASCII SOFTWARE SCIENCE Language)

リスト遊び―Emacsで学ぶLispの世界 (ASCII SOFTWARE SCIENCE Language)