在Charme中定义一个阶乘过程

时间:2011-03-30 21:08:32

标签: python scheme

我需要帮助在Charme中定义一个阶乘过程。该过程需要通过定义名为charmeFactorialDefinition的变量在Python中表示为字符串。当您评估evalInGlobal(charmeFactorialDefinition)时,它应该定义一个名为factorial的Charme过程。

输出应如下所示:

  
    
      

initializeGlobalEnvironment()

             

evalInGlobal(charmeFactorialDefinition)

             

evalInGlobal(“(因子5)”)

             

120

    
  

好的,到目前为止我知道Charme不支持快速列出函数及其参数的定义快捷方式,所以我必须用lambda写出答案,例如:

charmeDoubleDefinition =“(定义double(lambda(x)(+ x x)))”

但除此之外,我不知道如何开始

1 个答案:

答案 0 :(得分:1)

您应该为不知道您在说什么的人提供charme的链接。虽然这可能会解决您的问题。

charmeFactorialDefinition = "(define factorial (lambda (x) (if (> x 1) (* x factorial(x)) (1) ) ))"