一个帮助函数作为参数?
A helpfunction as parameter?
我不知道如何解决我的一个问题。
我为我的主要功能编写了两个帮助功能,但它不起作用。
;;Main function
(define (FunctionA a b c)
(/(-(* -1 b) VariableD)aNotNull))
(check-expect (FunctionA 1 1 1)-1)
;;Helpfunction1:
(define (VariableD a b c)
(if (> 0(-(* b b)(* 4 (* a c)))) (error "No negative numbers allowed")
(sqrt(-(* b b)(* 4 (* a c))))))
(check-expect (VariableD 0 0 0) 0)
(check-error (VariableD 1 2 3) "No negative numbers allowed")
;helpfunction2:
(define (aNotNull a)
(if (= 0 (* 2 a)) (error "Zerodivisor not allowed")
(* 2 a)))
(check-error (aNotNull 0 ) "Zerodivisor not allowed")
(check-expect(aNotNull 2) 4)
我收到错误:需要一个数字作为第二个参数,给定 (lambda (a1 a2 a3) ...)
但是我不知道怎么解决。
希望你能帮帮我:)
(define (FunctionA a b c)
(/ (- (* -1 b) VariableD) aNotNull))
VariableD
这里指的是你定义的函数。您可能想要使用来自 FunctionA
的 a
、b
和 c
输入来调用该函数,并在 FunctionA
.[=20= 中使用结果]
您对 aNotNull
的使用也是如此。我只是推断这些是您希望在此修订后的 FunctionA
:
中传递给这些函数的变量
(define (FunctionA a b c)
(/ (- (* -1 b)
(VariableD a b c))
(aNotNull a)))
我不知道如何解决我的一个问题。 我为我的主要功能编写了两个帮助功能,但它不起作用。
;;Main function
(define (FunctionA a b c)
(/(-(* -1 b) VariableD)aNotNull))
(check-expect (FunctionA 1 1 1)-1)
;;Helpfunction1:
(define (VariableD a b c)
(if (> 0(-(* b b)(* 4 (* a c)))) (error "No negative numbers allowed")
(sqrt(-(* b b)(* 4 (* a c))))))
(check-expect (VariableD 0 0 0) 0)
(check-error (VariableD 1 2 3) "No negative numbers allowed")
;helpfunction2:
(define (aNotNull a)
(if (= 0 (* 2 a)) (error "Zerodivisor not allowed")
(* 2 a)))
(check-error (aNotNull 0 ) "Zerodivisor not allowed")
(check-expect(aNotNull 2) 4)
我收到错误:需要一个数字作为第二个参数,给定 (lambda (a1 a2 a3) ...) 但是我不知道怎么解决。
希望你能帮帮我:)
(define (FunctionA a b c)
(/ (- (* -1 b) VariableD) aNotNull))
VariableD
这里指的是你定义的函数。您可能想要使用来自 FunctionA
的 a
、b
和 c
输入来调用该函数,并在 FunctionA
.[=20= 中使用结果]
您对 aNotNull
的使用也是如此。我只是推断这些是您希望在此修订后的 FunctionA
:
(define (FunctionA a b c)
(/ (- (* -1 b)
(VariableD a b c))
(aNotNull a)))