这更多的是一个理论问题,因为我还没有编写任何代码。
我正在尝试迭代一个应该输出一些值的函数。
我需要的是以某种方式记录迭代#以及迭代函数的输入和结果。
例如,如果我迭代毕达哥拉斯函数,我希望输出以下内容:
迭代# | 输入 | 输出 |
---|---|---|
1 | 0, 1 | 1 |
2 | 1, 1 | 2 |
3 | 1, 2 | 3 |
4 | 2, 3 | 5 |
5 | 3, 5 | 8 |
我想知道如何在 kdb 中存储这 3 个不同的值,我知道 Python 和其他语言有很多选择,但我不知道这在这种语言中是否可行。
此外,如果输入变量是一个表,这会影响以任何方式存储的能力吗?如果有 100,000 次迭代呢?
要迭代输入,您可以使用累加器:
q)0N!inputs:{last[x],sum x}\[5;0 1];
(0 1;1 1;1 2;2 3;3 5;5 8)
q)([] Iteration:1+til count inputs; Inputs:inputs; Output:sum each inputs)
Iteration Inputs Output
-----------------------
1 0 1 1
2 1 1 2
3 1 2 3
4 2 3 5
5 3 5 8
6 5 8 13