public class Exam02{
public static void main(String[] args){
boolean flag = true;
for(int num = 100;num <= 200;num++){
for(int div = 2;div < num;div++){
if(num % div == 0){
flag = false;
break;
}
}
if(flag)
System.out.println(num);
}
}
}
输出结果为空,原因在于flag标记应该放在第一个for循环中。按照上述程序运行,100开始执行,flag被赋值为false,且一直为false,导致不能打印出结果。
public class Exam02{
public static void main(String[] args){
for(int num = 100;num <= 200;num++){
for(int div = 2;div < num-1;div++){
if(num % div == 0)
break;
System.out.println(num);
}
}
}
}
改程序得出了打印出了素数结果,但是每个素数结果有多次输出。原因在于System.out.println(num);的位置问题。因为当num为素数时,不会执行break语句,第二个for循环每执行一次,则会打印一次num。
正确的程序:
public class Exam02{
public static void main(String[] args){
for(int num = 100;num <= 200;num++){
boolean flag = true;
for(int div = 2;div < num;div++){
if(num % div == 0){
flag = false;
break;
}
}
if(flag)
System.out.println(num);
}
}
}
分享到:
相关推荐
自定义函数求素数(质数).py
用开方根的方法求素数,简单浅显易懂。适于初学者
因数质数练习题及答案北师大版精选.doc
java求素数的经典算法java求素数的经典算法java求素数的经典算法java求素数的经典算法
利用筛法求素数利用筛法求素数利用筛法求素数利用筛法求素数利用筛法求素数
SQL Server 2005中求素数的方法,可以求出m到n之间的所有素数。
求素数的C语言版本 求素数的C语言版本 求素数的C语言版本
Console.WriteLine("请输入数字:"); int x; //输入的数字 x = Convert.ToInt32(Console.ReadLine()); DateTime da = DateTime.Now; 。。。。。
c++关于用C++求素数的源程序
java 求质数实例程序 求质数 源代码 简单易懂
用C语言开发的求素数,适合初学者学习,参考价值比较大
最快求素数的算法,求100000000以下所有素数0.3秒 , 在10000000以下的数中找到664579个素数,耗时53毫秒
在VS环境下 在窗体中求素数 编写的语言是C#
编制一个返回值为bool型的函数isPrimer(),用于判断参数是否为素数,调用函数回答以下问题(请包括在一个main()函数中完成,输出时,用明显的提示语,说明正在完成哪个任务。) (1)输出10000以内的所有素数。 (2...
找质数1练习题及答案精选.doc
之前在考研机试的时候看到了这个素数筛法,觉得还挺有趣的。解释下其中的一点,j为什么从i*i开始,按照一般思路应该从i*2开始的,但是仔细分析会发现i*i已经覆盖了i*2这个条件了,因此从i*i开始了。
java语言实现求素数的原根的源代码 输入一个素数 求出他所有的原根 密码学相关 java语言实现求素数的原根的源代码 输入一个素数 求出他所有的原根 密码学相关
用厄拉多塞法求素数的C源代码
求1到100的素数,不过这个算法可能不是很好,另外,还要有,5个换行输出
运用选择而不是普通算法求质数,运用新的思维方式,全新的实验方式。