我们先来了解一下素数到底是一个怎样的数。
素数又叫质数(prime number),有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
我们了解了素数的定义,就可以写出思路了,接下来就以求100以内的素数为例 。
我们的选择区间是 一个数大于1且小于100的这段数字,所以我们的代码可以这样写:
for (int s=2;s<=100;s++){
//功能代码
}
选择区间写出来了,我们就要写判断该数是否是素数
我们还需要再写出一个循环,也就是某个数能不能整除其他自然数的一个判定条件。
for(j=2;j<s;j++){
if(s%j==0){
break;}
}
这里的for循环是一个嵌套,即:它在外一层循环的区间内循环,j随着s的自增而自增,但永远不会于s相等(j<s体现)。
这里重点说判定语句if,在if里s%j==0,表达s除以j余数为0时,break结束并跳出整段循环(包括外循环)进入下一段代码。
最后我们只需要写出输出即可。
if (j >=s) {
System.out.print("|"+s);
}
这里补充一下,循环内的变量在循环外无法调用,所以我们要在整段循环前创建一个变量,即
int j=0;
for (int s=2;s<=100;s++){
for (j=2;j<s;j++){
if (s%j==0){
break;}
}
if (j >=s) {
System.out.print("|"+s);
}
}
这里我用 | 将把各数分隔开来,放上整段代码
public class PrimeNumber {
public static void main(String[] args) {
int j=0;
for (int s=2;s<=100;s++){
for (j=2;j<s;j++){
if (s%j==0){
break;}
}
if (j >=s) {
System.out.print("|"+s);
}
}
}
}