如何在APL中将数字拆分为数字

lmq*_*305 3 split numbers apl

在APL中,如何将整数或数字拆分为包含其数字的向量?这样做最简洁(最简短)的方法是什么?

Uri*_*iel 5

您可以使用Decode与基数10 的倒数:

10??¯1?
Run Code Online (Sandbox Code Playgroud)

因为Decode将根据需要获取尽可能多的数字并对其进行解码,其反转将采用数字并根据需要将其编码为任意数量的数字,

或者,?IO?0您可以尝试在数字向量中找到格式化数字的索引:

?D??
Run Code Online (Sandbox Code Playgroud)

演示两种解决方案.

这比Encode通过将10的数组整形到输入的log 10的长度而得到的自定义长度更好用.

{???10???10?1+?}
Run Code Online (Sandbox Code Playgroud)