键盘输入十个大于2的自然数,编写程序判断输入的数是不是一个素数,并输出判断结果
2条回答 默认 最新
- 爱在彩虹 2021-10-14 17:35关注
- 通过素数(质数)的定义:一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,所以可以遍历2到自身,如果自身能够整除遍历的数,就不是素数:
for (int i = 2; i < n; i++) { if (n % i == 0) { return false; } }
- 如果一个数不是素数,能够被因数分解,则分解后的两个数,其中一个必定小于等于该数的开平方根,其中一个必定大于该数的开平方根:
for (int i = 2; i <= Math.sqrt(n); i++) { if (n % i == 0) { return false; } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1 - 通过素数(质数)的定义:一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,所以可以遍历2到自身,如果自身能够整除遍历的数,就不是素数: