如何使用scheme在另一个函数中调用函数?

如何使用scheme在另一个函数中调用函数?,scheme,lisp,racket,Scheme,Lisp,Racket,我在学习这个计划,所以我在做一个有两个功能的程序,一个是根据飞行人数和飞机上的座位数来计算飞机的数量。在一切正常之前,问题是当我尝试在另一个函数中使用该函数时,我不知道如何操作 第一个功能: (定义并计算飞机 (lambda(乘客座位) (天花板(/乘客座椅))) 在第二个功能中,我想为每架飞机收取1000美元的费用,如果少于11架飞机,从第11架飞机开始,费用将为500美元,每名乘客将收取50美元的费用 以下是我所做的: (定义收费机场) (lambda(乘客座位) (续) (计算飞机(乘客

我在学习这个计划,所以我在做一个有两个功能的程序,一个是根据飞行人数和飞机上的座位数来计算飞机的数量。在一切正常之前,问题是当我尝试在另一个函数中使用该函数时,我不知道如何操作

第一个功能:

(定义并计算飞机
(lambda(乘客座位)
(天花板(/乘客座椅)))
在第二个功能中,我想为每架飞机收取1000美元的费用,如果少于11架飞机,从第11架飞机开始,费用将为500美元,每名乘客将收取50美元的费用

以下是我所做的:

(定义收费机场)
(lambda(乘客座位)
(续)
(<计算飞机(乘客座位)11)
(+(*计算飞机1000)
(*乘客50)))
((>计算飞机(乘客座位)10)
(+(*计算飞机(乘客座位)10000)
(*(-计算飞机(乘客座位)10)500)
(*乘客50(()())))

在您的代码示例中,您使用的是
+
<代码>+在任何方面都不是特别的,它只是一个简单的函数。要应用函数,只需将其放在表单的开头

(calculate-aeroplanes passenger seats) 

将调用带有乘客和座位参数的计算飞机)

在您的代码示例中,您使用的是
+
<代码>+在任何方面都不是特别的,它只是一个简单的函数。要应用函数,只需将其放在表单的开头

(calculate-aeroplanes passenger seats) 

将使用passenger和seats参数调用calculate airplanes)

在Scheme中调用函数的语法是
(函数名参数)
,而不是
函数名(参数)
。调用
时使用正确的语法Scheme中函数调用的语法是
(函数名参数)
,而不是
函数名(参数)
。当调用
Was语法问题时,您使用了正确的语法,谢谢这里是新代码:

(define fee-airport
   (lambda(passengers seats)
     (calculate-aeroplanes passengers seats)
     (cond
       ((< (calculate-aeroplanes passengers seats) 11)
         (+ (* (calculate-aeroplanes passengers seats)1000) (* passengers 
            50)))
       ((> (calculate-aeroplanes passengers seats) 10)
             (+ (* (calculate-aeroplanes passengers seats )10000) (* (- 
             (calculate-aeroplanes passengers seats) 10) 500)  (* passengers 
                   50))))
       )
 )
(定义收费机场)
(lambda(乘客座位)
(计算飞机乘客座位)
(续)
(<(计算飞机乘客座位)11)
(+(*(计算飞机乘客座位)1000)(*乘客
50)))
((>(计算飞机乘客座位)10)
(+(*(计算飞机乘客座位)10000)(*(-
(计算飞机乘客座位)10)500
50))))
)
)

是语法问题,谢谢这里是新代码:

(define fee-airport
   (lambda(passengers seats)
     (calculate-aeroplanes passengers seats)
     (cond
       ((< (calculate-aeroplanes passengers seats) 11)
         (+ (* (calculate-aeroplanes passengers seats)1000) (* passengers 
            50)))
       ((> (calculate-aeroplanes passengers seats) 10)
             (+ (* (calculate-aeroplanes passengers seats )10000) (* (- 
             (calculate-aeroplanes passengers seats) 10) 500)  (* passengers 
                   50))))
       )
 )
(定义收费机场)
(lambda(乘客座位)
(计算飞机乘客座位)
(续)
(<(计算飞机乘客座位)11)
(+(*(计算飞机乘客座位)1000)(*乘客
50)))
((>(计算飞机乘客座位)10)
(+(*(计算飞机乘客座位)10000)(*(-
(计算飞机乘客座位)10)500
50))))
)
)

非常感谢,非常简单,只是语法。非常感谢,非常简单,只是语法。