2007年2月18日

          public ? class ?Prime? {
          ????
          public ? static ? void ?main(String[]?args)? {
          ????????
          long ?timeStart? = ?System.currentTimeMillis();
          ????????
          int []?prime_array? = ? new ? int [ 10000 ]; // 用來保存10萬以下的質數(共9592個)
          ????????prime_array[ 0 ] = 3 ;
          ????????prime_array[
          1 ] = 5 ;
          ????????
          int ?i,primeId =- 1 ,m = 2 ,prime;
          ????????
          // System.out.println(2); // 質數2直接打出^_^
          ???????? for ?( int ?a? = ? 3 ;?a? <= ? 100000 ;?a? += ? 2 )? {
          ????????????
          if (m * m < a) {
          ????????????????
          // 避免使用sqrt()
          ????????????????m ++ ;
          ????????????}

          ????????????
          for ?(i = 0 ;(prime = prime_array[i]) <= m;i ++ )? {
          ????????????????
          if ?(a? % ?prime? == ? 0 )? {
          ????????????????????
          break ;
          ????????????????}

          ????????????}

          ????????????
          if ?(prime > m)? {
          ????????????????prime_array[
          ++ primeId] = a;
          ????????????????
          // 10萬以下的質數存起
          ????????????????
          // System.out.print(a+"?");
          ????????????}

          ????????}

          ????????System.out.println(
          " 計算10萬以下的質數(共 " + (primeId + 2 ) + " 個)耗時 " + (System.currentTimeMillis() - timeStart) + " 毫秒. " );
          ????????
          int ?maxNum = 100000000 ;
          ????????
          for ( int ?a? = ? 100001 ;?a? <= ?maxNum;?a? += ? 2 ) {
          ????????????
          if (m * m < a) {
          ????????????????
          // 避免使用sqrt()
          ????????????????m ++ ;
          ????????????}

          ????????????
          for ?(i = 0 ;(prime = prime_array[i]) <= m;i ++ )? {
          ????????????????
          if ?(a? % ?prime? == ? 0 )? {
          ????????????????????
          break ;
          ????????????????}

          ????????????}

          ????????????
          if ?(prime > m)? {
          ????????????????
          ++ primeId;
          ????????????????
          // System.out.print(a+"?");
          ????????????}

          ????????}

          ????????System.out.println(maxNum
          + " 以下共 " + (primeId + 2 ) + " 個質數. " );
          ????????System.out.println(
          " 耗時 " + (System.currentTimeMillis() - timeStart) + " 毫秒. " );
          ????}

          }

          posted @ 2007-02-18 21:20 zero 閱讀(429) | 評論 (1)編輯 收藏
           
          今天開始看java,我寫的第一個東東~

          1public?class?HelloWorld?{
          2????public?static?void?main(String[]?args)?{
          3????????System.out.println("Hello?World!");
          4????}

          5}

          6
          posted @ 2007-02-18 21:17 zero 閱讀(132) | 評論 (1)編輯 收藏
          僅列出標題  
           
          主站蜘蛛池模板: 即墨市| 泗阳县| 祁连县| 崇礼县| 永登县| 上思县| 阿克陶县| 永城市| 碌曲县| 收藏| 库伦旗| 保靖县| 宝兴县| 茂名市| 遂溪县| 肥东县| 凉城县| 南华县| 永川市| 蓬溪县| 新泰市| 永新县| 河北省| 电白县| 图片| 渭源县| 巴东县| 乐清市| 永福县| 临猗县| 陆河县| 康平县| 庄浪县| 金昌市| 吉林市| 平果县| 揭东县| 惠东县| 华容县| 商丘市| 常山县|