#6111: 執行時間


a0912386736 (凱)


import java.util.Scanner;
public class t7{
  public static void main(String[] args){
    Scanner s=new Scanner(System.in);
    int c=0;
    int n=s.nextInt();
     for(int i=2;i<n;i++){
       if(n%i==0){
       c=1;
       break;
       }
      }
     if(c==1)
     System.out.println("非質數");
     else
     System.out.println("質數");
  }
}

當n%i==0我就跳出,這樣還會很久嗎?

如果要再改更好 要如何做ㄋ?

#6112: Re:執行時間


spongeJ (s33029005)


import java.util.Scanner;
public class t7{
  public static void main(String[] args){
    Scanner s=new Scanner(System.in);
    int c=0;
    int n=s.nextInt();
     for(int i=2;i       if(n%i==0){
       c=1;
       break;
       }
      }
     if(c==1)
     System.out.println("非質數");
     else
     System.out.println("質數");
  }
}

當n%i==0我就跳出,這樣還會很久嗎?

如果要再改更好 要如何做ㄋ?


i < n  改成  i < Math.sqrt(n)
#6113: Re:執行時間


a0912386736 (凱)


import java.util.Scanner;
public class t7{
  public static void main(String[] args){
    Scanner s=new Scanner(System.in);
    int c=0;
    int n=s.nextInt();
     for(int i=2;i       if(n%i==0){
       c=1;
       break;
       }
      }
     if(c==1)
     System.out.println("非質數");
     else
     System.out.println("質數");
  }
}

當n%i==0我就跳出,這樣還會很久嗎?

如果要再改更好 要如何做ㄋ?


i < n  改成  i < Math.sqrt(n)
 謝謝你!!