
质数(Prime number),又称素数,是指在大于1的自然数中,除1和该数本身外,不能被其他自然数整除的数(也可以定义为只有1和该数)
两个因数本身的数量)。
推荐:Python教程
那么,如果你想计算一个随机数,Python应该如何写质数呢?首先,第一句话必须是接受用户输入的数字:
n=int(input("pleaseenterthenumber:"))然后要计算这个数字是否是质数,那么从2开始到这个数字之前的自然数,显然是一个数字范围:
foriinrange(2,n):
当然,在循环体中,每个循环都是为了判断当次除法是否是整除。在这里,可以使用求模操作,即取余。当余数为0时,该数不是质数:
ifn%i==0:
print("%disnotaprimenumber!"%n)
break这个break意味着当这个数字不是质数时,它会跳出整个循环,这个数字不是我们想要的数字。
所以,如果所有的循环迭代完成后都没有发现可以整除的情况,那么可以判断这个数字是一个质数,所以:
else:
print("%disaprimenumber!"%n)所以在这个时候,所有的代码都已经写好了,但是为了看起来简单,没有判断一层是否大于1,默认情况下用户输入的数字需要大于1:
n=int(input("pleaseenterthenumber:"))
foriinrange(2,n):
ifn%i==0:
print("%disnotaprimenumber!"%n)
break
else:
print("%disaprimenumber!"%n)这里要仔细品味这个代码,else不是和if一对,而是和for并排,我们常见的是if...else或if…elif..else等等,但其实for也是
它可以与else相匹配。在这个代码中,当一个次历结果的余数为0时,break生效,循环就结束了,与之成对的else代码就不执着了。
好吧;当所有遍历结束后没有余数为0时,该循环将转移到else开始执行,并打印输出“该数为质数”。
更多技术请关注Python视频教程。