用Java求1-100的素数
原理:
素数:一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数,最小的素数是2。
所以我们判断一个数n是不是素数,只要用n对2到n里的数求余不为0就可以了,所以简单的循环就可以判断是不是素数。
代码:
public class Sushu {
public static void main(String[] args) {
int i,j;//i用来循环2-100,j用来循环2-i
int k=0;//统计有多少素数
for(i=2;i<=100;i++){
boolean t=true;//定义一个布尔类型判断是否为素数
for(j=2;j<i;j++) {
if(i%j!=0)
continue;//如果求余不为0,则继续,直到循环结束否则直接结束循环,继续判断下一个数
else {
t = false;//不是素数,结束循环
break;
}
}
if(t) {//如果是素数,t=ture,用K统计个数,把i打印出来
k++;
System.out.println(i);
}
}
System.out.println("有素数"+k+"个");
}
}
代码图片:
代码图片总结:
- 关键是要判断了一个素数后,怎么把素数输出出来,这里我们用一个布尔类型的变量。还有一种思路是判断是非素数后,赋值为false,跳出循环,原理都是一样,可以试着写写看
网友评论