代码之家  ›  专栏  ›  技术社区  ›  hatch22

将列表传递给DrRacket(Scheme)中的多个arity函数

  •  1
  • hatch22  · 技术社区  · 8 年前

    OEIS-A003418

    (lcm (apply values (build-list 256 add1)))
    

    这给了我一个“结果算术不匹配”错误(预期为1,收到256)。当我省略时 lcm 我得到一个从1到256的序列输出到控制台。我不确定算术不匹配的原因,因为 lcm公司 the docs ),和 apply 当它是最外层的函数而不是 lcm公司 .我错过了什么?此外,如果有更简单的方法将LCM从1写到n,请随时分享。

    1 回复  |  直到 8 年前
        1
  •  1
  •   soegaard    8 年前

    使用时,固定算术和非固定算术之间没有区别 apply :

    (apply lcm (build-list 256 add1))