【发布时间】:2015-07-26 07:58:52
【问题描述】:
我知道,当我对一个不产生整数的数字求平方根 (%:) 时,我的答案是浮点数。我正在寻找平方根的下限 (<.) 以获得整数结果。 J 是否有内置的方法来实现这一点?我需要借助循环来找到答案吗?
折腾几个扩展精度 (x:) 请求肯定不行。
rootanddiffa =: 3 : '(y - root ^ 2);(root =. <. %: y)'
rootanddiffa 24
┌─┬─┐
│8│4│
└─┴─┘
rootanddiffa 26
┌─┬─┐
│1│5│
└─┴─┘
rootanddiffa 99999999999999x
┌──┬────────┐
│_1│10000000│
└──┴────────┘
rootanddiffb =: 3 : '(y - root ^ 2);(root =. x: <. x: %: y)'
rootanddiffb 24
┌─┬─┐
│8│4│
└─┴─┘
rootanddiffb 99999999999999x
┌──┬────────┐
│_1│10000000│
└──┴────────┘
【问题讨论】:
标签: j extended-precision