深圳定制建站网站建设网页制作平台有哪些
话不多说 先上代码
(defn product [ term a nxt b](defn iter [a result](if (> a b)1 (* (term a) (iter (nxt a) result))))(iter a 1))
跟习题1.30比较起来,就是两个地方不同 乘法不能乘0 必须是1。难度来讲,跟1.30难度是一样的。增加了迭代过程与递归过程两种模式,先搞定迭代模式。
两个合并的话 应该也是可以
(defn product [ term a nxt b f2 defval](defn iter [a result](if (> a b)defval(f2 (term a) (iter (nxt a) result))))(iter a defval))
过程自然是迭代的方式