- 451 名前:abc [2007/06/21(木) 14:14:54 ]
- 【 課題 】
このプログラムをできるだけ高速化してください↓n<=20000;の数字を大きくしても早く計算できるようにしてほしいです。 public class a{ static int prime(int number){ int count=0; for(int i=1; i<=number; i++){ if(number%i==0) count++; } return count; } public static void main(String[] args){ int n=100, p; long start = System.currentTimeMillis();for(n=2; n<=20000; n++){ for(p=n+1; p<2*n; p++){ if(prime(p)==2){ //System.out.println("自然数n=" + n + "の時,素数は存在する."); break; }} if(p==2*n){ //System.out.println("この定理は間違いと判明!"); break;} if(n%500==0){ long stop = System.currentTimeMillis(); System.out.println(n + " " + (stop-start));}}}} 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】明日までにお願いします。 【 Ver 】java version "1.5.0" 【 補足 】よろしくお願いします。
|

|