首页 > 编程知识 正文

输出1-100之间的质数,输出100到200的质数

时间:2023-05-06 03:39:12 阅读:213945 作者:4263

方法一:

* 方法一 * 根据质数的定义得出的方法 */ public static void isPrimeNumber2(){ System.out.println("100以内的质数是: " + 2); System.out.println("100以内的质数是: " + 3); System.out.println("100以内的质数是: " + 5); System.out.println("100以内的质数是: " + 7); for (int i = 2 ;i < 100;i++){ if(i % 2 != 0 && i % 3 != 0 && i % 5 != 0 && i % 7 != 0 ){ System.out.println("100以内的质数是: " + i); } } }

方法二:

* 方法二: * 这个代码用了两层循环。外层循环列举从2-100之间的每一个整数(作为被除数) * 然后在内层循环中用从2到它之间的数去除它,如果找到了一个能够整除它的数,内层循环将立即跳出(此时j<i). * 如果一直没有找到能够整除它的数,则当内层循环将2到它之间所有数都尝试一遍之后,内层循环也跳出(此时j等于i) * 等到内层循环跳出之后,程序接着判断j是否大于i,如果是(上面第二种情况), * 表明这个数是质数,于是将这个数打印出来并计算到累加中去; 如果不是(上面第一种情况),表名这个数不是质数。 */ public static void isPrimeNumber3(){ int i,j; for( i = 2; i < 100; i++){ for( j = 2; j < i;j++){ if (i % j == 0){ break; } } if (j >= i){ System.out.println("100以内的质数是:"+i); } } }}

方法三:

public static void isPrimeNumber1(){ int [] arr = new int[1000]; int count = 0; for (int i= 2;i < 100; i++){ boolean flag = true; for (int j =2;j <= Math.sqrt(i);j++){ if (i % j == 0){ flag = false; break; } } if (flag ){ System.out.println("100以内的质数是: "+ i); } } } public static void isPrimeNumber4(){ boolean isFlag = true; int count = 0; label: for (int i = 2;i <= 100000; i++){ //遍历100以内的自然数 for (int j = 2 ; j < Math.sqrt(i); j++){ if (i % j == 0){//若能除尽 /* isFlag = false; break ;*/ continue label; } } //能执行到此步骤都是质数 count++; /*if(isFlag){ System.out.println("100以内的质数是:"+i); } //重置 isFlag isFlag = true;*/ } System.out.println("质数的个数是:"+count); }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。