J 如何让方程自相乘?
我怎样才能让这个方程自乘呢?
*/-.%~.q:36
除了再次重复数字36之外。顺便说一句,这是欧拉的 Totient 函数。
我缺少将其与其本身相乘的最后一步。
是的,我知道他们已经在 jsoftware 上有了这个功能的代码。但我正在尝试分解代码并学习。
抱歉问这么简单的问题。在 Google 上很难找到 J 的帮助。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
再次使用该值的最直接方法是再次包含该值。
可以为值使用名称。
动词可以被定义。该名称是其中的本地名称。
相同的动词可以用默认的形式表达。在这种形式中,参数是隐含的,而不是命名的。这里两次使用参数值的关键是在括号内创建的钩子。
The most direct way to use the value again is to include the value again.
A name can be used for the value.
A verb can be defined. The name is local within it.
The same verb can be phrased in tacit form. In this form the parameter is implied, not named. Here the key to using the parameter value twice is the hook created within parentheses.
简短的答案
是
较长的答案
您有一种情况
,其中
f
是二元*
,而g
是您已经拥有的函数:*/-.%~.q:
。现在,yf (g(y))
简单地转换为“train”(fg) y
(如您在手册)。使用 Cap[:
* 加上括号g
:我们终于有了:
或
* 您可以使用 Atop 和 At 构造函数
g
但 Cap 通常对于火车来说更清晰。Short answer
is
Longer answer
You have a case of
where
f
is the dyad*
andg
is the function that you already had:*/-.%~.q:
. Now,y f (g(y))
transforms simply to the "train"(f g) y
(as you can see at the manual). Using Cap[:
* to parenthesizeg
:we finally have:
or
* You can use Atop and At to construct function
g
but Cap is usually clearer for trains.好吧,这是我想出的。
Ok this what I came up with.
在我尝试了这个函数,试图找出它的工作原理并进行研究等之后(我只有第二年的微积分背景),我回顾了素数函数的旧选项卡
p:
发现J内置了欧拉的totient函数5&p:
。After I played around with this function trying to find out how it works and researching and the like (I only have a second year Calculus background), I looked back at an old tab for the primes function
p:
and found that J has built in Euler's totient function5&p:
.