gpt4 book ai didi

fibonacci - 在 APL 中生成没有循环或流量控制的斐波那契数列

转载 作者:行者123 更新时间:2023-12-04 23:19:57 24 4
gpt4 key购买 nike

有没有一种方法可以在 APL 中使用不需要循环或流量控制的单行创建斐波那契数列?

我已经使用 的函数完成了它和条件测试,但我觉得必须有一种更优雅、声明式的方式。安 example我发现声称在一行上做这件事在 gnu-apl 上不起作用 - 似乎它在正确的轨道上,使用矩阵数学,但我很难跟随,并且无法调整它可以正常工作。

我追求 APL 作为我的第一个真正的编程语言(我喜欢符号。我只是喜欢。)我现在使用 Project Euler 作为一种更好地熟悉的方式。

最佳答案

另一种方法是使用(相对较新的)幂运算符。 GNU APL 可能支持也可能不支持,它适用于 Dyalog(我使用的是 13.1)和 NGN APL。

尝试

 ({⍵,+/¯2↑⍵} ⍣ 20) (1 1)  

与其他示例一样,迭代是隐藏的,这里使用幂运算符。

表达方式
({⍵,+/¯2↑⍵} ⍣ 3) (1 1)

是在做
{⍵,+/¯2↑⍵} {⍵,+/¯2↑⍵} {⍵,+/¯2↑⍵} 1 1

在封面下。

1 1 是种子值,每个连续的 {⍵,+/¯2↑⍵} 简单地连接最后两个元素的总和。

关于fibonacci - 在 APL 中生成没有循环或流量控制的斐波那契数列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29997709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com