【求助】输出长度应该是一个机器精度整数
mathematica吧
全部回复
仅看楼主
level 5
轸幻FIGHTER 楼主
求助各位友友们。如图,在使用元组Tuples后,提示输出长度应该是一个机器精度整数。
是不是因为输出的长度太长了,有没有别的办法保留结果,或者使用内部的结果,如Tuples[{0,1},70][[1]]之类的(试过但不行)
感谢各位热心吧友的建议和解答~
源代码粘贴在1楼,吧主请勿删,感谢~
2024年06月21日 03点06分 1
level 5
轸幻FIGHTER 楼主
Tuples[{0, 1}, 70]
2024年06月21日 03点06分 2
level 9
如果能输出, 那就会有 2^70 ≈ 10^21 项, 这是不可能的
并且 $MaxMachineInteger 也小于 2^70
TrueQ[Developer`$MaxMachineInteger < 2^70]
2024年06月21日 10点06分 3
感谢,那这个是不是可以通过提升内存来运行,比如用高性能计算平台
2024年06月22日 03点06分
吧务
level 13
有64位运算的限制和内存的限制。
只要部分结果或许可用其它方法
IntegerDigits[Range[2^70 - 10, 2^70 - 1], 2, 70]
2024年06月22日 04点06分 4
感谢~ 我可能是想要列表里的部分元素[呵呵]
2024年06月23日 01点06分
吧务
level 15
这种情况可以用lazy list版本的tuple,参SE帖子《Lazy lists of Tuples and Subsets》(编号9554)
2024年07月06日 01点07分 5
1