有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?...

本文介绍了一个使用Java编写的程序,该程序可以生成由数字1、2、3、4组成的全部不同且无重复数字的三位数,并统计了这些数字的总数。
/***
有1、2、3、4个数字,
能组成多少个互不相同且无重复数字的三位数?
都是多少?
**/
public class HundredNumber{
private int[] a={1, 2, 3, 4};//定义数组并赋值
private int num=0;//定义组成三位数的个数
private int hundredNum=0;//定义组成的三位数
//hundred-百位, tens-十位, units-个位
public int hundNumber(int hundred, int tens, int units){
return 100*hundred+10*tens+1*units;
}
public static void main(String[] args){
HundredNumber hn=new HundredNumber();
for(int i=0; i<4; i++){
for(int j=0; j<4; j++){
for(int m=0; m<4; m++){
if(hn.a[i]!=hn.a[j]&&hn.a[j]!=hn.a[m]&&hn.a[m]!=hn.a[i]){
hn.hundredNum=hn.hundNumber(hn.a[i], hn.a[j],hn.a[m]);
hn.num++;
System.out.println(hn.hundredNum);
}
}
}
}
System.out.println("Total: "+hn.num);
}
}

刚学Java,各位前辈们指教一下!
以下是几种使用 Java 语言实现计算并列出由 1、2、3、4 组成互不相同无重复数字三位数的代码示例: ### 示例一 ```java public class Test { public static void main(String[] args) { System.out.print("1、2、3、4 能组成互不相同无重复数字三位数"); int count = 0; for (int i = 1; i <= 4; i++) { for (int j = 1; j <= 4; j++) { for (int k = 1; k <= 4; k++) { if (i != j && j != k && k != i) { System.out.println(i * 100 + j * 10 + k); count++; } } } } System.out.println("共有" + count + "个"); } } ``` ### 示例二 ```java package test; public class ZuHe { public static void main(String[] args) { for (int i = 1; i <= 4; i++) { for (int j = 1; j <= 4; j++) { for (int k = 1; k <= 4; k++) { if (i != j && i != k && j != k) { System.out.println(100 * i + 10 * j + k); } } } } } } ``` ### 示例三 ```java public class DifferentNumber { public static void main(String[] args) { int[] array = new int[]{1, 2, 3, 4}; int count = 0; for (int i = 0; i < array.length; i++) { for (int j = 0; j < array.length; j++) { for (int k = 0; k < array.length; k++) { if (i != j && i != k && j != k) { System.out.print(array[i] * 100 + array[j] * 10 + array[k] + "\t"); count++; if (count % 5 == 0) { System.out.println(); } } } } } System.out.println("\n" + "共有" + count + "个数"); } } ``` 这些代码的核心思路都是通过三重循环遍历 1、2、3、4 这四个数字,对每一个可能的组合进行判断,如果百位、十位、个位上的数字互不相同,则输出该三位数并统计个数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值