Questions tagged «octave»

10
八度高尔夫打球技巧
您在Octave打高尔夫球有哪些一般提示?我正在寻找可以应用于编码高尔夫问题的想法,这些想法至少在某种程度上是特定于Octave的(例如,“删除评论”不是答案)。请为每个答案发布一个提示。
18 code-golf  tips  octave 

3
如何在Octave中使用匿名函数交换向量中的元素?
在Octave中交换向量/矩阵中的两个元素非常简单: x='abcde'; x([4,1])=x([1,4]) x = dbcae 不幸的是,我还没有找到在匿名函数中执行此操作的方法。尽管下面的函数在语法上是正确的,但它只返回交换的两个元素,而不是整个x向量: f=@(x)(x([4,1])=x([1,4])) f(x) ans = ad 是否有一种方法可以通过匿名方法使用匿名函数来实现所需的行为?可以使用匿名函数以这种方式交换几个元素吗? 我可以创建一个索引向量:f=@(x)x([4,2,3,1,5]),但是动态创建这样的向量也可能会占用很多字节。

1
在Octave中定义匿名递归函数的最短方法是什么?
我喜欢Octave中的函数式编程,但是在实践中相当笨拙。我想知道定义匿名递归函数的最短方法。 我有一些想法,但我想知道是否有一种方法可以将这些想法组合在一起,使它们变得更短(或同样简短但功能更广泛)。为了解决这个问题,让我们递归递减为零(只是为了使有效负载尽可能简单)。 如果我的推论是正确的,则在以下示例中使用的变量名都不应重叠。所需的函数是q(n),应始终返回零。i用作计数器变量,f是我g在的本地范围中调用的递归函数f。 44个字节,“内联定义f” q=@(n)(f=@(g,i){@()g(g,i-1),i}{~i+1}())(f,n) 44字节,“参数列表定义f” q=@(n,f=@(g,i){@()g(g,i-1),i}{~i+1}())f(f,n) 44个字节,“的单独定义f” f=@(i,g){@()g(i-1,g),i}{~i+1}();q=@(n)f(n,f) 41个字节,“作为返回值的所需功能” f=@(g)@(n){@()g(g)(n-1),n}{~n+1}();q=f(f) 当前的“赢家”是受骗子的答案启发的。但是,鉴于执行此操作的方法范围很广,也许有人可以想到更短的方法组合。 我们的目标当然是使它具有39字节以下的“完整”功能,请在线尝试!
12 code-golf  tips  octave 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.