【发布时间】:2013-03-28 03:21:45
【问题描述】:
我有一个函数可以区分方程并将其作为列表打印到屏幕上。我现在要做的是一个函数,它接受像这样返回的表达式: '(+ (* x 0) (* 2 1)) 并简化答案。去掉 x*0,因为它总是计算为零并将 2*1 替换为 2,最终只返回 2,因为 2 + 0 是 2。 这是我到目前为止所拥有的,显然它非常缺乏,任何帮助开始这个过程将不胜感激。
(define (simplify expr)
(if (not (list? expr))
expr
(if (null? (cdr expr))
(car expr)
(case (car expr)
((+
))
))
【问题讨论】:
标签: scheme expression racket simplify