简单递归函数定义
在 Racket 中,我们经常使用递归。下面是一个函数示例,它将从零到参数 n
的所有数字相加。
(define (sum n)
(if (zero? n)
0
(+ n (sum (sub1 n)))))
请注意,此处使用了许多有用的基于便利的功能,例如 zero?
和 sub1
。每个都分别完成你所期望的:zero?
返回一个布尔值,表示给定的数字是否等于零,sub1
从其参数中减去一个。
在 Racket 中,我们经常使用递归。下面是一个函数示例,它将从零到参数 n
的所有数字相加。
(define (sum n)
(if (zero? n)
0
(+ n (sum (sub1 n)))))
请注意,此处使用了许多有用的基于便利的功能,例如 zero?
和 sub1
。每个都分别完成你所期望的:zero?
返回一个布尔值,表示给定的数字是否等于零,sub1
从其参数中减去一个。