/*
判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
*/
public class Demo1 {
public static void main(String[] args) {
int sum=0;
for(int i=100;i<=200;i++) {
while(i>100&&i<200) {
if(i%2==0) {
System.out.println("不是素数:"+i);
break;
}
else {
System.out.println("是素数:"+i +" ");
break;
}
}
}
System.out.println("共有"+sum+"个素数");
}
}
public class Demo2 {
public static void main(String[] args) {
int sum=0;
for (int i = 101; i < 201; i++)
{
for (int j = 2; j <=i; j++)
{
if(j==i)
{
System.out.println(j);
}
else if(i%j==0)
{
sum++;
break;
}
}
}
System.out.println("总共有"+(100-sum)+"个素数");
}
}
/*
else if(i%j==0)
{
sum++;
break;
}
这里可能有些同学一下没有转过来:这里的巧妙之处在于 break:跳出当前循环 ,注意这里是双层循环哦。
仔细想想break 的用法就明白了
*/
public class Demo3 {
public static void main(String args[]) {
int x = 0;
Vector<Integer> v = new Vector<Integer>(); //采用集合
for (int i = 101; i <= 200; i = i + 2) { //这里为什么是i+2因为开始数是101加1 是个偶数,所有偶数都能被2整除
boolean b = true;
for (int j = 2; j < i / 2; j++) {
if (i % j == 0) {
b = false;
break;
}
}
if (b == true) {
v.add(i);
x++;
}
}
System.out.println("100到200中间有 " + x + " 个素数");
System.out.println("素数为:" + v);
}
}