九块九特卖,珲春天气预报,教师读书笔记
目录
能解决题目的代码并不是一次就可以写好的
我们需要根据我们的思路写出后通过debug模式找到不足再进行更改
多次测试后才可得到能解决题目的代码!
通过学习,练习【java基础经典练习题】,让我们一起来培养这种解决问题思路。
q1:什么是素数?
a1: 素数(质数)指的是在大于1的自然数中除了1和该数本身外,无法被其它自然数整除的数。(也就是说一个数只有1和它本身两个因数)
q2:如何判断一个数有除了1和该数本身之外的因数?
a2:让我们以4为例来分析:
由此我们可以总结出来规律:
判断一个数是否有其它因数,就让这个数去除[2-(需判断的数-1)]这个范围内的数。
如判断4就只需看:4/2、4/3
看这两种情况中是否有整除情况发生:
若有则说明此数不为素数,就进行下一次判断
若没有说明此数为素数,需输出此数,并让保存【素数个数的变量】加1后再进行下一次判断。
package exercise; public class sushu1 { public static void main(string[] args) { int i = 0; int j = 0; int count = 0;//储存2-100之间的素数个数 boolean flag = true; //用处:在当一个数有【除1和它本身之外的因数】时,使其值变为false,以便进入下一次循环 for (i = 2; i <= 100; i++) {//从2-100开始进行循环 flag = true; //每完成一次for循环需要把flag值重新置为true,否则将会影响下次的循环 for (j = 2; j < i; j++) { //用此for循环的数字来判断i是否有【除1和它本身之外的因数】 if (i % j == 0) {//如果i%j==0,说明i有【除1和它本身之外的因数】 flag = false;//这时让flag = false; break;//并退出这个双重for循环 } } if (flag == true) { //从双重for循环退出后,判断flag的值是否是true,若为true则说明此数为素数 count++;//存储素数的总和加1 system.out.println("从2-100之间的素数有:" + i);//输出素数结果 } } system.out.println("从2-100之间的素数个数有:" +count);//输出素数总个数 } }
结果:
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
apollo与springboot集成实现动态刷新配置的教程详解
网友评论