public class ccc {
public static void main(String[] args) {
System.out.println("1-50之间所有的素数为:");
int sum=0;
for (int i = 2; i<= 50; i++) {
for (int j = 2; j <= i; j++) {
if (i%j == 0) {
if (i == j) {
System.out.print(i + " ");
sum += i;
} else {
break;
}
}
}
}
System.out.println("\n1-50之间所有素数和为:\n" + sum);
}
}
先理解素数的定义:在大于1的整数中,只能被1和这个数本身整除的数为素数(也叫质数)
敲代码前最好能先画出流程图,理清整个流程的思路程序中定义了两个for循环
第一个循环是用来输出2-50的整数
第二个循环开始验证每个数是否为素数
定义了两个if循环来验证首先判断i%j是否等于0,判断为true则继续下一个if判断(false则跳出)
第二个if判断i是等于j(即这个数是否它本身)true则输出这个数为素数,false则跳出这时则求出1-50的所有素数,
然后再定义一个sum变量将它们累加即可求出1-50所有素数的和