java 实现排列组合

public class TestCA {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  
  //输入底数与指数的值
  Scanner dishu = new Scanner(System.in);
     int  xiabiao = dishu.nextInt();   
  Scanner shangshu = new Scanner(System.in); 
     int  shangbiao = shangshu.nextInt();
    
     if(shangbiao<= xiabiao){
     int  plzh =   numModel(xiabiao,shangbiao);     
     System.out.println("排列组合的数值"+plzh);   
     }else{     
      System.out.println("对不起你输入的数值不合法");
     }
    
 }
 
 //把 数值 转换成 阶乘
    public static int  numModel(int n, int m)
  {
   return Factorial(n,m)/Factorial(m,m);
  };

  public static int Factorial(int n, int m){
   
   int v =1;  
   //使用 for循环  注意 括号 后面 的分号
   for(;m>0;m--,n--) v =v*n ;  //等价于for(){};
   return v;
   } 

}

猜你喜欢

转载自dusai2010.iteye.com/blog/2161997
今日推荐