206
社区成员
发帖
与我相关
我的任务
分享
首先根据题意我们要判断一个数是否为素数,那么根据我们中学所学过的知识素数是除了1和它本身以外没有其他因子的数就为素数,所以到这有人估计就会想直接用for循环从1遍历到该数本身看之间有没有该数的因数,如果有那么久意味着它不是素数,反之他就是素数,相信大多数人都是这样想的,没问题,但是我们电脑的运行是有时长限制的当我们这个数太大的话就会运行超时了,所以我们要考虑简化我们的代码使运行时长减短。那么我们可以从素数的性质入手,我们知道除了2以外的素数都是奇数,所以从这我们就可以入手来简化我们的代码,首先我们先判断这个数是否为偶数,如果是除了2以外的偶数那么它一定不是素数,之后我们在来进一步判断这个数是否为素数,首先1肯定不是素数,那么从这我们就可以写一个for循环从2开始到该数的开根号的数,为什么要到开根号的数呢,根据因数的性质,该数的两个因子肯定在该数的开根的数的两边的一个大于或等于开根的值,一个小于或等于开根的值。所以通过上面的思路我们就可以开始写代码了。代码如下:
美国五星级上将麦克阿瑟曾经说过: 吃起来没有肉味就是素的