A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

判断101-200之间有多少个素数,并输出所有素数

4 个回复

倒序浏览
这个是入学测试题吧。
回复 使用道具 举报
哈哈,我感觉楼上正解
回复 使用道具 举报
我给你的是1~200之间,你可以自己改变范围来随便测
回复 使用道具 举报
/* 需求:判断1-200之间有多少个素数,并输出所有素数  思路:通过一个for循环来遍历这个给定的区间,通过if来判断         比如x%2==0,说明x能被2除所以不是素数,如果x/2!=0,说明x不能被2除,但是有可能被         3整除,所以还要判断x%3是否==0,一次类推,x%4,%5....所以定义一个变量y,通过for         循环来不断判断x%y是否==0,当y取值等于x/2时就可以了.         在通过循环完x%y后,如果x%y都不==0,就说明这个x是素数.通过定义的变量++方式来记录         素数的个数. */ class B {         public static void main(String[] args)         {                 int a = 0;//定义一个变量来记录出现素数的个数.                 A:for (int x = 1;x<=200 ;x++ )                 {                         if (x ==1)//1不是素数,所以排除出去                                 continue A;                         if(x==2)//2是一个特殊的素数,只有2是偶数,其他的素数都是奇数.所以单独判断                         {                                 System.out.println(x+"是素数");                                 a++;                                 continue A;                         }                                 for (int y = 2;y <= x/2 ;y++)                         {                                 if(y!=(x/2))                                 {                                         if (x%y==0)                                                 continue A;                                 }                                 else                                         a++;//记录素数的个数                         }                         System.out.println(x+"是素数");                 }                 System.out.println("这个区间素数的个数是"+a+"个");         } }
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马