ELisp编程十:求最大值

这是一个简单的练习,如果一个list中有几个数字,写一个函数,找出最大值。

(defun get-max (n-list)
  (let* ((tmp (car n-list)) (max tmp))
    (while n-list
      (setq tmp (car n-list))
      (if (> tmp max)
	  (setq max tmp)
	)
      (setq n-list (cdr n-list))
      )
    max
    )
  )

(setq number-list '(5 8 9 10 87 34))
(get-max number-list)


结果显示为87.


注意:

setq可以用来修改let定义的变量的值

let* 可以支持tmp立刻生效,并将值赋给max


你可能感兴趣的:(ELisp编程十:求最大值)