A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jk7130866 中级黑马   /  2015-7-24 20:47  /  506 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 jk7130866 于 2015-7-24 20:52 编辑

从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个
不同元素中取出m个元素的一个组合;从n个不同元素中取出m(m≤n)个元素的所有组合的个数,
叫做从n个不同元素中取出m个元素的组合数。用符号c(n,m)表示。根据组合的计算公式来呗!!

public class Test {

        public static void main(String[] args) {
                // TODO Auto-generated method stub
               
                for(int x=0;x<10;x++){
                        for(int y=0;y<=x;y++){
                                System.out.print("  "+zuhe(x,y));//打印
                        }
                        System.out.println();
                }
                        
        }
        static int zuhe(int big,int small){//计算组合的方法注意前面的参数只能是叫大的数
                int zuhe=0;
                  zuhe=  jiecheng(big)/jiecheng(small)/jiecheng(big-small);
                return zuhe;
        }
        static int jiecheng(int num){//计算阶乘的方法只能计算12以内
                int jiecheng=1;
        if(num>1){
                for(int i=1;i<=num;i++){
                        jiecheng*=i;
                }
               
        }else if(num==0) {
                return 1;
               
        }
                return jiecheng;
               
        }
               




6 个回复

倒序浏览
Queen_one 来自手机 中级黑马 2015-7-24 21:42:27
沙发
以前c+ +学过 可是很久了 都忘记了
回复 使用道具 举报
很久了 都忘记了
回复 使用道具 举报
有没有别的实现方法
回复 使用道具 举报
忘记算法了。。
回复 使用道具 举报
今天就学到这,先去睡好了
回复 使用道具 举报
希望明天一切顺利,加油!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马