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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 田磊阳   /  2013-3-29 20:35  /  15304 人查看  /  218 人回复  /   3 人收藏 转载请遵从CC协议 禁止商业使用本文

小程序标题:判断两数之间的素数
小程序题目:给定两个数,判断两个数之间(含两数)的素数的个数,并输出所有两数之间所有的素数
小程序答案:
  1. /* Prime.java
  2. *
  3. * 题目:判断素数。   
  4. * 思路:1,判断是否是素数(素数是指除了1和此整数自身外,不能被其他自然数整除的数,0和1不是素数)
  5. * 2,定义一个变量b用来判断是否是素数ture表示是素数,false表示不是素数
  6. * 3,定义一个变量temp来表示给定的数(除1和本身之外)被其他自然数整出的数的个数
  7. * 4,判断两个数(含两个数)之间素数的个数
  8. * 5,定义变量temp2来表示素数的个数
  9. * 6,用for循环遍历两个数之间的每个数,并判断是否为素数,为真则temp2+1;并输出
  10. * 7,输出两个数之间素数的个数
  11. *
  12. * */
  13. public class Prime {
  14.         public static void main(String[] args) {
  15.                 int a  = 1;
  16.                 int b = 200;
  17.                 primeNo(a,b);
  18.         }
  19.         /*
  20.          * isPrime()判断一个数是否为素数
  21.          * 为真,返回true
  22.          * 不为真,返回false
  23.          */
  24.         public static boolean isPrime(int a) {
  25.                 boolean b = false;//定义变量记录a是否为素数
  26.                 int temp = 0;//记录可以被其他自然数整除的数的个数
  27.                 if(a==0 || a==1){//0和1不是素数
  28.                         b = false;
  29.                 }else{
  30.                         for(int i = 2;i<a;i++){
  31.                                 if(a%i==0){
  32.                                         temp++;
  33.                                 }
  34.                         }
  35.                         b = (temp==0)?true:false;//根据temp可以判断该数是否为素数,temp不等于0表示该数不是素数
  36.                 }
  37.                 return b;
  38.         }
  39.        
  40.         public static void primeNo(int a,int b){
  41.                 int temp2 = 0;//记录素数的个数
  42.                 if(a>b){//若传入的两个数a>b,则交换两个数
  43.                         a=a+b;
  44.                         b=a-b;
  45.                         a=a-b;
  46.                 }
  47.                 for(int i=a;i<=b;i++){//遍历a和b之间的每个数,判断是否为素数,并记录个数
  48.                         boolean bool = isPrime(i);
  49.                         if(bool==true){
  50.                                 System.out.print(" "+i+" ");
  51.                                 temp2++;
  52.                         }
  53.                 }
  54.                 System.out.println();
  55.                 System.out.print(a+"和"+b+"之间的素数的个数为:"+temp2);//输出素数的个数
  56.         }
  57. }
复制代码
上一题楼层及时间:第一次出题
上一题推荐的答案:
本题目楼层及时间:第105楼,时间为:2013年3月30日

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

回复 使用道具 举报
怎么感觉有点乱啊。。抢楼的抢楼。。。出题的出题。。。。。
回复 使用道具 举报
又抢楼了
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。
回复 使用道具 举报
盖楼。。。盖到113看视频学习去鸟。。

点评

额,你这样很容易让人觉得脸熟哦,谢谢你的热情。希望你能在抢楼后,你能多回答一些题目哦  发表于 2013-3-30 17:43

评分

参与人数 2技术分 +2 收起 理由
黄玉昆 + 1 新人鼓励
田磊阳 + 1

查看全部评分

回复 使用道具 举报
额,抢一个
回复 使用道具 举报
又盖楼{:soso_e103:}。。。
回复 使用道具 举报
抢一个~~~!!!
回复 使用道具 举报
盖楼。。
回复 使用道具 举报
我要123.。。
回复 使用道具 举报
123啊。。。
回复 使用道具 举报
123.。。
回复 使用道具 举报
123.。。
回复 使用道具 举报
123.。。
回复 使用道具 举报
抢完123  再答题。。。{:soso_e113:}

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

回复 使用道具 举报
{:soso_e142:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马