java问题求解:键盘输入十个大于2的自然数,编写程序判断输入的数是不是一个素数,并输出判断结果

键盘输入十个大于2的自然数,编写程序判断输入的数是不是一个素数,并输出判断结果

  1. 通过素数(质数)的定义:一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,所以可以遍历2到自身,如果自身能够整除遍历的数,就不是素数:
    for (int i = 2; i < n; i++) {
     if (n % i == 0) {
       return false;
     }
    }
    
  2. 如果一个数不是素数,能够被因数分解,则分解后的两个数,其中一个必定小于等于该数的开平方根,其中一个必定大于该数的开平方根:
    for (int i = 2; i <= Math.sqrt(n); i++) {
     if (n % i == 0) {
       return false;
     }
    }
    

下载码来一个