package Demo11Number_Combine;
public class Number_Combine {
/**
* 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
*/
/*
分析:有四个数,组成三位数,三位数就是a*100+b*10+c这样
三重循环来完成这个题目,
需要注意的一点是题目要求组成的数字中不能有重复数字。
*/
public static void main(String[] args) {
// 定义一个变量来计数,为了我们格式化打印,每行打印10个数,初始化为1
int count =1;
// 使用三重循环,来遍历百位,十位及个位的数值
for (int i = 1; i <= 4; i++) {
for (int k = 1; k <= 4; k++){
for (int j = 1; j <= 4; j++) {
// 这三重循环会遍历所有的组成结果,包括122这种类型的
// 根据题目要求,我们要过滤掉有重复数字的组合结果
if(!(i==j || i==k || j==k)){
// 添加一个判断,格式化打印,每10个开始换行
if(count%10==0) {
System.out.println(i * 100 + j * 10 + k);
count++;
}else{
System.out.print(i*100+j*10+k+"---");
count++;
}
}
}
}
}
System.out.println();
// 打印总数,由于count初始化为1,所以这里要减去1
System.out.println("总共能组成"+(count-1)+"个数字。");
}
}
有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。
- cnt = 0 for i in range(1,5): for j in range (1,5): ...