【问题标题】:Complex numbers in chicken scheme鸡计划中的复数
【发布时间】:2015-08-10 17:35:36
【问题描述】:

为什么在默认情况下(即不加载诸如数字鸡蛋之类的扩展名)在鸡方案中定义了过程real-partimag-partanglemagnitudecomplex?,但没有@ 987654326@ 和make-polar?如果我无法创建复数,我应该如何处理它们?

【问题讨论】:

  • 鸡手册声明它不支持核心中的复数。您提到的那些程序在用于塔中任何较低的数字时都会返回正确的值(它们只有一个实部)。为什么它们在核心中定义可能只有开发人员才能回答。你应该如何处理它们?只有你能回答。也许你会在他们的邮件列表或 IRC 频道 (#chicken) 上问这个问题会更好
  • 答案见下文。请注意,CHICKEN 5 将内置对完整数字塔的支持,因此如果您有耐心,它将自行提供:)

标签: scheme chicken-scheme


【解决方案1】:

在没有数字鸡蛋的鸡计划中,您可以创建一个实数。

现在实数的实部是实数。这意味着real-part 的结果将始终是一个实数。

对于实数,虚部始终为零。因此,imag-part 对实数的结果是实数。

任何数的大小都是实数,因此magnitude 总是产生一个实数。

这解释了为什么包含 real-partimag-partmagnitude - 它们很容易实现实际输入。

不支持make-rectangularmake-polar 的原因是它们产生复数。并且不支持复数(没有鸡蛋)。

也就是说:永远不会产生复数的运算(当应用于实数时)。产生复数的运算被忽略了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多