2-100之间的素数(一点问题)

publicclassSamp2_5{publicstaticvoidmain(Stringargs[]){inti,j,half,n;for(i=2;i<100;i++... public class Samp2_5{ public static void main(String args[]){ int i,j,half,n; for (i=2;i<100;i++){ n=i; half=n/2; for(j=2;j<=half;j++) if(n%j==0)break; if(j>half) System.out.println("素数="+i); } } } 问题:(1)break结束的是什么循环体? (2)只是将满足"n%j==0"的数字去掉,但并不影响循环的进行,下个数会继续执行i++,为什么要break? (3)if(j>half) System.out.println("素数="+i); j>half,那54也是大于half的,但并不是素数?另外j<=half时,满足素数条件的i怎么输出? 展开
 我来答
松农抗慧艳
2020-06-02 · TA获得超过4024个赞
知道大有可为答主
回答量:3118
采纳率:25%
帮助的人:405万
展开全部
1)结束for循环
2)一个数不能被这个数的一半以下的所有的数整除,他就是素数,举例说明,7不能被2、3整除,他就是素数,大于这个数的一半,就没有必要检查了。
3)同2),注意half是i的一半,不是100的一半
ps:请注意你的for循环是嵌套的,break退出的是里面的for,因为它已经确定这个数是素数还是合数。退出去验证下一个数是否为素数。比如他的中间部分运行顺序是这样的,7不能被2整除,7不能被3整除,j〉7的一半,println,i++,8能被2整除,break,i++,9不能被2整除,9能被3整除,break...
北京埃德思远电气技术咨询有限公司
2021-11-22 广告
假设条件在短路的实际计算中, 为了能在准确范围内迅速地计算短路电流, 通常采取以下简化假设。(1)不考虑发电机的摇摆现象。(2)不考虑磁路饱和,认为短路回路各元件的电抗为常数。(3)不考虑线路对地电容, 变压器的磁支路和高压电网中的电阻, ... 点击进入详情页
本回答由北京埃德思远电气技术咨询有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式