gpt4 book ai didi

pari-gp - 平价/GP : user defined functions

转载 作者:行者123 更新时间:2023-12-02 22:14:01 24 4
gpt4 key购买 nike

我已经定义了 arity 1 的几个函数,比如说 func1(-)func2(-) .我已经对它们进行了测试,发现它们确实在做它们应该做的事情。

我想定义第三个函数,比如说 func3(-) , 输出 func1(-) 的差值和 func2(-) .我就是这样做的

func3(k) = {j=func1(k)-func2(k); print(j)}

然而,它并没有返回它应该返回的内容。让我们假设func1(5)输出 10 和 func2(5)输出 2。然后,func3(5)应该输出 8,对吗?它返回 func1(5) 的输出在一行中,func2(2) 的输出在另一行中,然后是零(即使相应输出的差异不为 0)。

你知道func3(-)的定义有什么问题吗? ?

最佳答案

GP 用户函数返回最后评估的值。在这里,这是结果'print(j)' 命令,打印 j(副作用)并返回 'void',当必须给它一个值时,它被类型转换为 0,如此处。

f1(x) = 10
f2(x) = 2
f3(x) = f1(x) - f2(x)

正确返回 8。您没有提供 func1/func2 的代码功能,但我希望你包含一个“打印”语句,也许期待它返回一个值。这就是为什么您会在 0 之前的不同行上获得输出。

如果您不喜欢这种“return-last-evaluation-result”行为,您可以使用明确的“返回(结果)”语句。

关于pari-gp - 平价/GP : user defined functions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14789491/

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