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


public class LianXi_05 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
        
		/*
		 * 百位有可能是  1 2 3 4                  十位:有可能是  1 2 3 4                        各位:有可能是  1 2 3 4,要求是 百位 十位  各位上的数字不能重复
		 * 123  124 134  132 ...
		 * 
		 * */
		//定义变量用于记录合格的三位数的个数
		int count = 0;
		
		//通过第一层循环控制百位的数字    i的值表示百位的值
		for (int i = 1; i <= 4; i++) {
			
			//通过第二层循环控制十位的数字    j的值表示百位的值
			for (int j = 1; j <= 4; j++) {
				
				//通过第三层循环控制个位的数字   k的值表示百位的值
				for(int k=1;k<=4;k++) {
					
					
					if(i!=k && i!=j && j!=k) {
						int data = i*100 + j*10 +k;
						//System.out.println("data:"+data);
						//每找到一个合格的整数,让count值自增
						count++;
					}
					
				}
				
			}
		}
		
		//System.out.println("满足条件的三位数的数量为:"+count);
		
		
		//加大难度  提供的数字[1 5 7 9]
		//定义变量用于记录满足条件的三位数
		int num = 0;
		//定义数组
		int[] arrays = new int[] {1,5,7,9};
		//通过第一层循环控制百位的数字    i的值表示百位的值
		for (int i = 0; i < arrays.length; i++) {
			
			//通过第二层循环控制十位的数字    j的值表示百位的值
			for (int j = 0; j < arrays.length; j++) {
				
				//通过第三层循环控制个位的数字   k的值表示百位的值
				for(int k=0;k< arrays.length;k++) {
					
					
					if(arrays[i]!=arrays[k] && arrays[i]!=arrays[j] && arrays[j]!=arrays[k]) {
						int data = arrays[i]*100 + arrays[j]*10 + arrays[k];
						System.out.println("data:"+data);
						//每找到一个合格的整数,让count值自增
						num++;
					}
					
				}
				
			}
		}
		System.out.println("满足条件的三位数的个数:"+num);
		
	}

}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM