www.baidu.com

          JavaCode--我愛你,芳兒

          JavaStudy--我愛你,芳兒

          4位的吸血鬼數字計算的JAVA代碼

           

           1 public class Xixueguinumber
           2 {
           3     
           4     public int cal(int x, int y, int z, int w)
           5     {
           6         int num = (x * 10 + y) * (z * 10 + w);
           7         return num;
           8         
           9     }
          10     public static void main(String[] args)
          11     {
          12         for (int i = 1000; i <= 9999;i++)
          13         {
          14             int a = (int)(i/1000);
          15             int b = (int)((i - a*1000)/100);
          16             int c = (int)((i-((int)(i/100))*100)/10);
          17             int d = (int)(i - ((int)(i/10))*10);
          18             Xixueguinumber Xi = new Xixueguinumber();
          19             boolean b1 = Xi.cal(a,b,c,d) == i;
          20             boolean b2 = Xi.cal(b,a,c,d) == i;
          21             boolean b3 = Xi.cal(a,b,d,c) == i;
          22             boolean b4 = Xi.cal(b,a,d,c) == i;
          23             boolean b5 = Xi.cal(a,c,b,d) == i;
          24             boolean b6 = Xi.cal(a,c,d,b) == i ;
          25             boolean b7 = Xi.cal(c,a,b,d) == i;
          26             boolean b8 = Xi.cal(c,a,d,b) == i;
          27             boolean b9 = Xi.cal(a,d,b,c) == i;
          28             boolean b10 = Xi.cal(d,a,b,c) == i;
          29             boolean b11 = Xi.cal(a,d,c,b) == i;
          30             boolean b12 = Xi.cal(d,a,c,b) == i;
          31             Boolean array[] ={b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12};
          32             for(int j = 0; j <12; j++)
          33             {
          34                 if(array[j])
          35                 {
          36                     System.out.print("吸血鬼數字為:" + i + "=" );
          37                     switch(j+1)
          38                     {
          39                         case 1 : System.out.println(""+ a + b + " * " + c + d);break;
          40                         case 2 : System.out.println(""+ b + a + " * " + c + d);break;
          41                         case 3 : System.out.println(""+ a + b + " * " + d + c);break;
          42                         case 4 : System.out.println(""+ b + a + " * " + d + c);break;
          43                         case 5 : System.out.println(""+ a + c + " * " + b + d);break;
          44                         case 6 : System.out.println(""+ a + c + " * " + d + b);break;
          45                         case 7 : System.out.println(""+ c + a + " * " + b + d);break;
          46                         case 8 : System.out.println(""+ c + a + " * " + d + b);break;
          47                         case 9 : System.out.println(""+ a + d + " * " + b + c);break;
          48                         case 10 : System.out.println(""+ d + a + " * " + b + c);break;
          49                         case 11 : System.out.println(""+ a + d + " * " + c + b);break;
          50                         case 12 : System.out.println(""+ d + a + " * " + c + b);break;
          51                     }
          52                 }
          53 
          54             }
          55 
          56         }
          57     }
          58 }
          感覺蠻好玩的.

           

          芳兒寶貝.我愛你

          posted on 2007-12-23 17:21 wǒ愛伱--咾婆 閱讀(1924) 評論(7)  編輯  收藏

          評論

          # re: 4位的吸血鬼數字計算的JAVA代碼 2008-08-08 17:35

          你寫的是2位和2位的相乘,那1位和3位相乘的呢?  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼 2008-09-24 19:07 lijianfeng

          以兩個0結尾的數是不允許的,所以在for循環中要加上一句
          if((i%100)==0) continue;  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼 2008-09-28 19:59 wu

          import java.util.*;

          class xixuegui {
          public static void main(String args[]) {
          for(int x = 11; x < 99; x++) {
          for(int y = 11; y < 99; y++) {
          int ji = x * y;
          if(ji < 1000 && (ji % 100) != 0)
          continue;
          int a[] = new int[4];
          a[0] = x / 10;
          a[1] = x % 10;
          a[2] = y / 10;
          a[3] = y % 10;
          /*for(int j = 0; j < a.length - 1; j++) {
          for(int i = 0; i < a.length - 1; i++) {
          if(a[i] < a[i+1]) {
          int c = a[i];
          a[i] = a[i+1];
          a[i+1] = c;
          }
          }
          }*/
          Arrays.sort(a);
          int m = a[0] + a[1] * 10 + a[2] * 100 + a[3] * 1000;
          //int m = a[0] * 1000 + a[1] * 100 + a[2] * 10 + a[3];
          //System.out.print(m + " ");
          int b[] = new int[4];
          b[0] = ji / 1000;
          b[1] = ji / 100 % 10;
          b[2] = ji / 10 % 10;
          b[3] = ji % 10;
          //for(int i = 0; i < b.length; i++) {
          // System.out.print(b[i] + " ");
          //}
          /*for(int j = 0; j < b.length - 1; j++) {
          for(int i = 0; i < b.length - 1; i++) {
          if(b[i] < b[i+1]) {
          int d = b[i];
          b[i] = b[i+1];
          b[i+1] = d;
          }
          }
          }*/
          Arrays.sort(b);
          int n = b[0] + b[1] * 10 + b[2] * 100 + b[3] * 1000;
          //for(int i = 0; i < b.length; i++) {
          // System.out.print(b[i] + " ");
          //}
          //int n = b[0] * 1000 + b[1] * 100 + b[2] * 10 + b[3];
          //System.out.print(n + " ");
          if(m == n && x < y) {
          System.out.println(x + "*" + y + "=" + x * y);
          }
          //System.out.println(x + "*" + y + "=" + x * y);
          }
          }
          }
          }  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼 2008-11-29 08:42 WildTiger


          class Ghost {
          static void prt(int m){
          System.out.print(m+" ");
          }
          static void prtl(){
          System.out.println();
          }
          public static void main(String[] args) {
          int digital[] = new int[4];
          int one,two,j1,j2,j3,j4;
          //從1000到9999,對每一個數都判斷是否是吸血鬼數,若是則輸出
          outer:
          for(int i=1000; i<10000; i++){
          //對于每一個數,首先提取它的每一個位上的數字。
          digital[0]=i/1000;
          digital[1]=i%1000/100;
          digital[2]=i%100/10;
          digital[3]=i%10;
          //根據提取出的每一位數字,組合成兩個10位數。
          for(j1=0; j1<4; j1++){
          if(digital[j1]!=0){
          one=digital[j1]*10;//如果當前這一位不為0,則將其放到第一個數的最高位。
          //提取第一個數的個位數字。
          for(j2=0; j2<4; one=digital[j1]*10,j2++){
          if(j2!=j1){//第二位數和第一位數不能是同一個
          one+=digital[j2];
          for(j3=0; j3<4; j3++)
          if(j1!=j3 && j2!=j3 &&digital[j3]!=0){//第二個數的首位不能是以前用過的,而且不能為0
          two=digital[j3]*10;
          for(j4=0; j4<4; two=digital[j3]*10,j4++)
          if(j1!=j4 && j2!=j4 && j3!=j4){
          two+=digital[j4];
          if(two*one==i){
          prtl();
          prt(i);
          prt(one);
          prt(two);
          continue outer;
          }
          }
          }
          }
          }
          }
          }
          }
          }
          }


          花了我將近一個上午才弄出來的。  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼[未登錄] 2009-01-10 02:18 111

          1 public class Xixueguinumber
          2 {
          3
          4 public int cal(int x, int y, int z, int w)
          5 {
          6 int num = (x * 10 + y) * (z * 10 + w);
          7 return num;
          8
          9 }
          10 public static void main(String[] args)
          11 {
          12 for (int i = 1000; i <= 9999;i++)
          13 {
          14 int a = (int)(i/1000);
          15 int b = (int)((i - a*1000)/100);
          16 int c = (int)((i-((int)(i/100))*100)/10);
          17 int d = (int)(i - ((int)(i/10))*10);
          18 Xixueguinumber Xi = new Xixueguinumber();
          19 boolean b1 = Xi.cal(a,b,c,d) == i;
          20 boolean b2 = Xi.cal(b,a,c,d) == i;
          21 boolean b3 = Xi.cal(a,b,d,c) == i;
          22 boolean b4 = Xi.cal(b,a,d,c) == i;
          23 boolean b5 = Xi.cal(a,c,b,d) == i;
          24 boolean b6 = Xi.cal(a,c,d,b) == i ;
          25 boolean b7 = Xi.cal(c,a,b,d) == i;
          26 boolean b8 = Xi.cal(c,a,d,b) == i;
          27 boolean b9 = Xi.cal(a,d,b,c) == i;
          28 boolean b10 = Xi.cal(d,a,b,c) == i;
          29 boolean b11 = Xi.cal(a,d,c,b) == i;
          30 boolean b12 = Xi.cal(d,a,c,b) == i;
          31 Boolean array[] ={b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12};
          32 for(int j = 0; j <12; j++)
          33 {
          34 if(array[j])
          35 {
          36 System.out.print("吸血鬼數字為:" + i + "=" );
          37 switch(j+1)
          38 {
          39 case 1 : System.out.println(""+ a + b + " * " + c + d);break;
          40 case 2 : System.out.println(""+ b + a + " * " + c + d);break;
          41 case 3 : System.out.println(""+ a + b + " * " + d + c);break;
          42 case 4 : System.out.println(""+ b + a + " * " + d + c);break;
          43 case 5 : System.out.println(""+ a + c + " * " + b + d);break;
          44 case 6 : System.out.println(""+ a + c + " * " + d + b);break;
          45 case 7 : System.out.println(""+ c + a + " * " + b + d);break;
          46 case 8 : System.out.println(""+ c + a + " * " + d + b);break;
          47 case 9 : System.out.println(""+ a + d + " * " + b + c);break;
          48 case 10 : System.out.println(""+ d + a + " * " + b + c);break;
          49 case 11 : System.out.println(""+ a + d + " * " + c + b);break;
          50 case 12 : System.out.println(""+ d + a + " * " + c + b);break;
          51 }
          52 }
          53
          54 }
          55
          56 }
          57 }
          58 }  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼 2009-04-11 17:22 成子

          @111
          代碼很啰嗦,不過效率比價高  回復  更多評論   

          # re: 4位的吸血鬼數字計算的JAVA代碼[未登錄] 2010-07-19 22:31 AA

          狠SB的辦法,不過很清晰。  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          公告

          芳兒寶貝.我愛你


          黑客基地
          http://www.hackbase.com
          全球最大的黑客門戶網站


           最近在讀的書:

          常用鏈接

          留言簿(1)

          隨筆分類(37)

          JavaCode

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 息烽县| 南川市| 金堂县| 武功县| 舟山市| 登封市| 习水县| 广西| 定兴县| 油尖旺区| 南安市| 泊头市| 涡阳县| 通榆县| 板桥市| 商丘市| 芜湖市| 姜堰市| 乌什县| 庆元县| 深水埗区| 霞浦县| 龙里县| 汽车| 肇庆市| 乌拉特中旗| 辽中县| 益阳市| 合水县| 高邑县| 榆社县| 德兴市| 泸州市| 大渡口区| 长寿区| 湖南省| 天台县| 襄垣县| 玉门市| 湘潭县| 汤阴县|