有1、2、3、4四個數字,能組成多少個互不相同且無重復數字的三位數?都是多少?
1 String str=""; 2 //首先把所有組成的三位數全部存入字符串中 用#隔開 3 for (int i = 1; i <= 4; i++) { 4 for (int j = 1; j <= 4; j++) { 5 for (int k = 1; k <= 4; k++) { 6 int num = i * 100 + j * 10 + k; 7 str = num + "#"+str; 8 } 9 } 10 } 11 //按照#把字符串進行分割 輸出字符串類型的三位數字 12 String s[]=str.split("#"); 13 String a,b,c; 14 int count=0; 15 //數組遍歷 每個元素截取每一位 進行比較 16 for(int i=0;i<s.length;i++){ 17 a=s[i].substring(0, 1); 18 b=s[i].substring(1, 2); 19 c=s[i].substring(2, 3); 20 if(a.equals(b)==false&&b.equals(c)==false&&a.equals(c)==false){ 21 System.out.println(s[i]); 22 count++; 23 } 24 } 25 System.out.println("一共有"+count+"個這樣的數。");
1 int count1=0; 2 for(int i=1;i<=4;i++){ 3 for(int j=1;j<=4;j++){ 4 for(int k=1;k<=4;k++){ 5 //判斷只要三個數字不相同 就組成三位數並輸出 6 if(i!=j&&i!=k&&j!=k){ 7 int num1=i*100+j*10+k; 8 count1++; 9 System.out.println(num1); 10 } 11 } 12 } 13 } 14 System.out.println("一共有"+count1+"個這樣的數。");
結果: