当前位置:编程学习 > JAVA >>

新手 求教育

判断输入的书是否为素数 --------------------编程问答--------------------
引用楼主 nianbairu 的回复:
判断输入的书是否为素数



文件名是test.java



import java.util.Scanner;

public class test
{
   public static void main(String[] args)
   {

       Scanner reader=new Scanner(System.in);
       int x=reader.nextInt();
       if(x%2==0)
       {
          System.out.println("不是素数");
       }
       else
       {
          System.out.println("是素数");
       }
    }
}
--------------------编程问答-------------------- 判断条件有问题,x%2==0一定不是素数,x%2!=0可能是素数,可能不是素数,这就涉及到一个判断素数的算法了,不过lz不用在这上面太花时间。
语法没问题,lz加油 --------------------编程问答-------------------- 首先看一下素数的定义:一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
因此,一楼的代码是不准确的。事实上,素数的分布是没有规律的,所有,我们一般都是求某一个范围以内的某个数是否为素数。 --------------------编程问答-------------------- 又让偶想起了  共产党员先进性教育。。。 --------------------编程问答--------------------

import java.util.Scanner;

public class test
{
   public static void main(String[] args)
   {

       Scanner reader=new Scanner(System.in);
       int x=reader.nextInt();
       int y = (int)Math.sqrt(x) ;
       boolean flag = true ;//标示是否被 非1和本身 整除
       for(int i=2;i<y;i++){ //遍历 2到本身开平方根的所有数
          if(x%i==0){ //判断 能否被整除
              flag = false ;  //能被其中一个数整除,则不是素数,将标示改为false;并跳出循环
              break ;
          }
       }
       if(flag){
          System.out.println("是素数");
       }else{
          System.out.println("不是素数");
       }
    }
}




--------------------编程问答-------------------- --------------------编程问答-------------------- 5楼正解 --------------------编程问答--------------------
引用 1 楼 fangzhaoguo 的回复:
引用楼主 nianbairu 的回复:
判断输入的书是否为素数



文件名是test.java

Java code


import java.util.Scanner;

public class test
{
   public static void main(String[] args)
   {

       Scanner reader=new Scanner(……


不好意思 ,当时干其他的 ,没有注意题目  --------------------编程问答--------------------
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,