「java素数for」java素数判断代码

博主:adminadmin 2023-01-25 12:57:07 426

本篇文章给大家谈谈java素数for,以及java素数判断代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

JAVA求素数:for(j=2;j

如上所述,不加{}的for的循环体只有后面紧接的一句,

为什么是i/2,就是i的一半(呵呵貌似白说了哈),当i的一半赋给一个整型的数时,或i/2被当成一个整型的数使用时,它一半就是去掉小数后的数(向下取整,比如5的一半,就当是2)

因此,算法大致的意思是这样,一个3到100的数,如果这个数,都不能被2到这个数的一半的数整除的话,就是素数

------------以下是对补充问题的回答------------------------

第一个if,当i能被j(一个2到i一半的整数)整除的时候,跳出for(j=2;j=i/2;j++){}循环体,当然for(j=2;j=i/2;j++){}循环体什么也没做,就一个劲的判断,当判断到有的场合时跳出,没有的话,j递增,然后继续循环

直到循环结束都没出现当i能被j(一个2到i一半的整数)整除的场合时,也跳出循环体,而j的值在结束时加1,刚好大过或等于(i的一半加1)。

而i在以上的两种情况跳出的场合,性质是不一样的,第一种是非素数,第二种是素数,所以进行

第二个if,假如for(j=2;j=i/2;j++){}循环体是在循环还没结束时跳出的,值必定小于(i的一半加1),就什么也不做,反之,是在循环结束时跳出的,那就是素数,就进行打印,

第三个if,没用{}那么只影响下一句,效果就是每6个素数就分别多用一行空行格开,纯粹格式不用在意

当然,如楼上,所说可以用i的平方根代替,可以减少检验次数

可能没说清楚,可能啰嗦了点,呵呵,希望对你有帮助!

-------------------------------对补充的回答

这两天没上网XD,是的,没有自增

java用for循环求出100-1000的姐妹素数

public class Sushu

1

{

public static void main(String[] args) {

int i,j,flag,temp,ft; //设置i为循环变量

temp = 97;//临时变量,用于标记上一个素数

tp = 0;

for( i = 101; i 1000; i+=2)

{

flag = 0; //flag用于标识是否为素数,是则为0,不是则为1

for(j = 2 ; j Math.sqrt(i) ; j++)、

if(i%j == 0)

{

flag = 1;

break;

}

if(flag == 0)

{

if(i - temp == 2)

{

if(tp == 0) //tp用于标识上一个素数是否打印,若打印则为1,否则为0

System.out.print(" "+temp);

System.out.print(" "+i); tp = 1;

}

else tp = 0;

temp = i;

}

}

}

}

java求素数代码

求1-N以内的所有素数,实现思路如下:

1、 得到1到n之间的素数,存到一个ArrayList集合。

2、判断一个数是不是素数:只能被1和本身整除

说明:从2开始除,不需要到n,也就是循环条件是 n 就可以,这之间只要被整除了,那么他就不是素数了。

3、设置主函数,运行 getPrimeNumberToN获取限定范围内的素数。 

执行结果图:

扩展资料:

实现功能的编程事项:

1、模块化思想。

先拆分需求,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有。不能把方法堆到一起,否则无法复用代码。

2、注意注释。

就算是自己的测试代码,尽量写清楚注释,这样即使过了三个月,再看代码,也能清晰明了。不要觉得简单,就懒得注释。

3、注意参数命名。

从类名到方法名,再到变量名,都不能随意取名,关于这个命名,不要嫌弃长,重点是意思清楚明白。见名知意(语义化),是最好的。

java for循环 求素数

楼主的程序略有误,下为修改后的代码

public class Test {

public static void main(String[] args) {

int i =1,j =2;

for(i=1;i=100;i++) {

for(j=2;j=i;j++){

//素数是指除了1和自身外不能被任何数整除的数

//因此遍历每一个小于i大于2的整数j

if(i%j==0)

//如果i能够被j整除

if(i==j)

//如果当i等于j的时候则满足i是素数的条件,即只能被1(

//j是从2计数的)和自身整除,因此i是素数

System.out.println(i +"是素数");

else

//在如果存在一个小于i大于2的整数j可以整除i,则i必不是

//素数,因此break操作.

break;//如果i可以被j整除且j不等于i,则跳出循环

}

}

}

}

亲测可用..

java素数for的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java素数判断代码、java素数for的信息别忘了在本站进行查找喔。