大约半个小时的思考“我做错了什么!”5行代码..。因为Python3在某种程度上舍入了大整数。任何人都知道为什么会出现这样的问题:int(6366805760909027985741435139224001 # This is 7**40./ 7) == 909543680129861140820205019889143 # 7**39int(6366805760909027985741435139224001
然而,当我试图通过生成70位的随机数来寻找一个素数时,我的程序在找到一个通过Miller-Rabin测试的数字之前,平均生成了100000多个数字(10步)。这是非常奇怪的,随机奇数小于70位的随机奇数的质数的概率应该很高(根据Hadamard-de la Vallée Poussin定理超过1/50 )。我的密码有什么问题吗?随机数发生器是否有可能以极低的概率抛出素数?我想不是..。任何帮助都是非常受欢迎的</em