If statement 若非如此建设
我试图解一个基本函数。但是我的第二个if语句和else.Ff出现了一个错误,你可以给我一个帮助,这是代码If statement 若非如此建设,if-statement,scheme,If Statement,Scheme,我试图解一个基本函数。但是我的第二个if语句和else.Ff出现了一个错误,你可以给我一个帮助,这是代码 (define (equation x) (if(> x 2) (+(-(* x x) x) 4) ) (if (and (> x 1 ) (= x 1)) (and (< x 2) (= x 2)) (/ 1 x)) (else 0) ) (定义(方程式x) (如果(>x2)(+(((*x)x)4)) (如果(和(>x1)(=x1))(和(x1)(=
(define (equation x)
(if(> x 2) (+(-(* x x) x) 4) )
(if (and (> x 1 ) (= x 1)) (and (< x 2) (= x 2)) (/ 1 x))
(else 0)
)
(定义(方程式x)
(如果(>x2)(+(((*x)x)4))
(如果(和(>x1)(=x1))(和(
和(>x1)(=x1)总是错误的
(如果代码中存在多个错误,则没有操作员将工作与第二个连接。在处理多个条件时,应该使用
cond
(将其视为一系列IF/ELSE IF/../ELSE语句)
请注意表达式(和(>x1)(=x1))
永远不会为真,因为x
大于或等于1
,这两个条件永远不会同时为真。您的意思可能是(或(>x1)(=x1))
,但即使如此,表达式也可以更简洁地写成(>=x1)
。同样的注意事项也适用于条件(和(
我相信这就是你的目标:
(define (equation x)
(cond ((> x 2)
(+ (- (* x x) x) 4))
((and (>= x 1) (<= x 2))
(/ 1 x))
(else 0)))
(定义(方程式x)
(秒(>x2)
(+(((*x)x)4))
((和(>=x1)(if条件的格式是(if(condition)(restinent)(alternate))
。else
不能与if
一起使用。这里的代码没有使用cond/else
(define (equation x)
(if (> x 2)
(+ (- (* x x) x) 4)
(if (and (or (> x 1) (= x 1)) (or (< x 2) (= x 2)))
(/ 1 x)
0)))
(定义(方程式x)
(如果(>x2)
(+((*x)x)4)
(如果(和(或(>x1)(=x1))(或(
或者
(define (equation2 x)
(if (< x 1)
0
(if (> x 2)
(+ (- (* x x) x) 4)
(/ 1 x))))
(定义(等式2 x)
(如果(x2)
(+((*x)x)4)
(/1 x)))
我不知道scheme,但你是说还是s而不是和
s?不,因为这两个条件都必须是真的,我想现在它只检查第二个ifx的第一部分,不能大于等于1,而是大于等于1。所以如果我想要1,我不知道sheme,但我认为它类似于前缀n和(>x0)(