1、6.1分类加法计数原理与 分布乘法计数原理第六章计数原理目录一、知识讲解二、小结三、练习一、知识讲解因为英文字母共有26个,阿拉伯数字共有10个,所以总共可以编出261036种不同的号码 用一个大写的英文字母或一个阿拉伯数字给教室里的一个座位编号,总共能编出多少种不同的号码?思考你能说一说这个问题的特征吗?探究一、知识讲解首先,这里要完成的事情是“给一个座位编号”;其次是“或”字的出现:一个座位编号用一个英文字母或一个阿拉伯数字表示因为英文字母与阿拉伯数字互不相同,所以用英文字母编出的号码与用阿拉伯数字编出的号码也互不相同这两类号码数相加就得到号码的总数上述计数过程的基本环节是:(1)确定分类
2、标准,根据问题条件分为字母号码和数字号码两类;(2)分别计算各类号码的个数;(3)各类号码的个数相加,得出所有号码的个数一般地,有如下分类加法计数原理:一、知识讲解完成一件事有两类不同方案,在第 1 类方案中有 m 种不同的方法,在第 2类方案中有 n 种不同的方法,那么完成这件事共有Nmn种不同的方法一、知识讲解例1在填写高考志愿表时,一名高中毕业生了解到,A,B 两所大学各有一些自己感兴趣的强项专业,如表 6.1-1A 大学B 大学表 6.1-1生物学化学医学物理学工程学数学会计学信息技术学法学一、知识讲解如果这名同学只能选一个专业,那么他共有多少种选择?分析:要完成的事情是“选一个专业”
3、因为这名同学在 A,B 两所大学中只能选择一所,而且只能选择一个专业,又因为这两所大学没有共同的强项专业,所以符合分类加法计数原理的条件一、知识讲解如果完成一件事有三类不同方案,在第 1 类方案中有 m1 种不同的方法,在第 2 类方案中有 m2 种不同的方法,在第 3 类方案中有 m3 种不同的方法,那么完成这件事共有多少种不同的方法?如果完成一件事情有 n 类不同方案,在每一类中都有若干种不同的方法,那么应当如何计数呢?探究一、知识讲解这里要完成的事情仍然是“给一个座位编号”,但与前一问题的要求不同在前一问题中,用 26 个英文字母中的任意一个或 10 个阿拉伯数字中的任意一个,都可以给出
4、一个座位号码但在这个问题中,号码必须由一个英文字母和一个作为下标的阿拉伯数字组成,即得到一个号码要经过先确定一个英文字母,后确定一个阿拉伯数字这样的两个步骤用图 6.1-1 所示的方法可以列出所有可能的号码?思考一、知识讲解也可以这样思考:由于前 6 个英文字母中的任意一个都能与 9 个数字中的任意一个组成一个号码,而且它们互不相同,因此共有 6954 种不同的号码图 6.1-1 是解决计数问题常用的“树状图”你能用树状图列出所有可能的号码吗?字母数字得到的号码A123456789A1A2A3A4A5A6A7A8A9图 6.1-1一、知识讲解你能说一说这个问题的特征吗?探究上述问题要完成的一件
5、事情仍然是“给一个座位编号”,其中最重要的特征是“和”字的出现:一个座位编号由一个英文字母和一个阿拉伯数字构成因此得到一个座位号要经过先确定一个英文字母,后确定一个阿拉伯数字这两个步骤,每一个英文字母与不同的数字组成的号码是互不相同的一般地,有如下分步乘法计数原理:完成一件事需要两个步骤,做第 1 步有 m 种不同的方法,做第 2 步有 n 种不同的方法,那么完成这件事共有 Nmn 种不同的方法一、知识讲解例2某班有男生 30 名、女生 24 名,从中任选男生和女生各 1 名代表班级参加比赛,共有多少种不同的选法?分析:要完成的一件事是“选男生和女生各 1 名”,可以分两个步骤:第 1 步,选
6、男生;第 2 步,选女生一、知识讲解如果完成一件事需要三个步骤,做第 1 步有 m1 种不同的方法,做第 2 步有 m2 种不同的方法,做第 3 步有 m3 种不同的方法,那么完成这件事共有多少种不同的方法?如果完成一件事情需要 n 个步骤,做每一步都有若干种不同的方法,那么应当如何计数呢?探究一、知识讲解例3书架的第 1 层放有 4 本不同的计算机书,第 2 层放有 3 本不同的文艺书,第 3 层放有 2 本不同的体育书(1)从书架上任取 1 本书,有多少种不同取法?(2)从书架的第 1 层、第 2 层、第 3 层各取 1 本书,有多少种不同取法?分析:(1)要完成的一件事是“从书架上取 1
7、 本书”,可以分从第 1 层、第 2 层和第 3 层中取三类方案;(2)要完成的一件事是“从书架的第 1 层、第 2层、第 3 层各取 1 本书”,可以分三个步骤完成一、知识讲解例4要从甲、乙、丙 3 幅不同的画中选出 2 幅,分别挂在左、右两边墙上的指定位置,共有多少种不同的挂法?分析:要完成的一件事是“从 3 幅画中选出 2 幅,并分别挂在左、右两边墙上”,可以分步完成左边右边得到的挂法甲乙丙甲丙甲乙丙乙左甲右乙左甲右丙左乙右甲左乙右丙左丙右甲左丙右乙图 6.1-2一、知识讲解分类加法计数原理和分步乘法计数原理,回答的都是有关做一件事的不同方法种数的问题区别在于:分类加法计数原理针对的是“
8、分类”问题,其中各种方法互相独立,用其中任何一种方法都可以做完这件事;分步乘法计数原理针对的是“分步”问题,各个步骤中的方法互相依存,只有每一个步骤都完成才算做完这件事 一、知识讲解例5给程序模块命名,需要用 3 个字符,其中首字符要求用字母 AG 或 UZ,后两个字符要求用数字 19,最多可以给多少个程序模块命名?分析:要完成的一件事是“给一个程序模块命名”,可以分三个步骤完成:第 1 步,选首字符;第 2 步,选中间字符;第 3 步,选最后一个字符而首字符又可以分为两类你还能给出不同的解法吗?一、知识讲解例6电子元件很容易实现电路的通与断、电位的高与低等两种状态,而这也是最容易控制的两种状
9、态因此计算机内部就采用了每一位只有 0 或 1 两种数字的记数法,即二进制为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用 1 个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由 8 个二进制位构成(1)1 个字节(8 位)最多可以表示多少个不同的字符?(2)计算机汉字国标码包含了 6 763 个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?一、知识讲解分析:(1)要完成的一件事是“确定 1 个字节各二进制位上的数字”由于每个字节有 8 个二进制位,每一位上的值都有 0,1 两种选择,而且不同的顺序代表不同的字符,因此可以用分
10、步乘法计数原理求解;(2)只要计算出多少个字节所能表示的不同字符不少于 6 763 个即可第 1 位第 2 位第 3 位第 8 位2 种2 种2 种2 种图 6.1-3一、知识讲解例7计算机编程人员在编写好程序以后需要对程序进行测试程序员需要知道到底有多少条执行路径(程序从开始到结束的路线),以便知道需要提供多少个测试数据一般地,一个程序模块由许多子模块组成图 6.1-4 是一个具有许多执行路径的程序模块,它有多少条执行路径?另外,为了减少测试时间,程序员需要设法减少测试次数你能帮助程序员设计一个测试方法,以减少测试次数吗?一、知识讲解图 6.1-4开始结束子模块 118 条执行路径子模块 2
11、45 条执行路径子模块 328 条执行路径子模块 438 条执行路径子模块 543 条执行路径A一、知识讲解分析:整个模块的任意一条执行路径都分两步完成:第 1 步是从开始执行到 A点;第 2 步是从 A 点执行到结束而第 1 步可由子模块 1、子模块 2、子模块 3 中任何一个来完成;第 2 步可由子模块 4、子模块 5 中任何一个来完成因此,分析一条指令在整个模块的执行路径需要用到两个计数原理你看出了程序员是如何实现减少测试次数的吗?一、知识讲解例8通常,我国民用汽车号牌的编号由两部分组成:第一部分为用汉字表示的省、自治区、直辖市简称和用英文字母表示的发牌机关代号,第二部分为由阿拉伯数字和
12、英文字母组成的序号,如图 6.1-5 所示0冀 A JR005省、自治区、直辖市简称发牌机关代号序号图 6.1-5 一、知识讲解其中,序号的编码规则为:(1)由 10 个阿拉伯数字和除 O,I 之外的 24 个英文字母组成;(2)最多只能有 2 个英文字母如果某地级市发牌机关采用 5 位序号编码,那么这个发牌机关最多能发放多少张汽车号牌?分析:由号牌编号的组成可知,序号的个数决定了这个发牌机关所能发放的最多号牌数按序号编码规则可知,每个序号中的数字、字母都是可重复的,并且可将序号分为三类:没有字母,有 1 个字母,有 2 个字母以字母所在位置为分类标准,可将有 1 个字母的序号分为五个子类,将
13、有 2 个字母的序号分为十个子类一、知识讲解 用两个计数原理解决计数问题时,最重要的是在开始计算之前要仔细分析两点:(1)要完成的“一件事”是什么;(2)需要分类还是需要分步分类要做到“不重不漏”分类后再分别对每一类进行计数,最后用分类加法计数原理求和,得到总数分步要做到“步骤完整”,即完成了所有步骤,恰好完成任务分步后再计算每一步的方法数,最后根据分步乘法计数原理,把完成每一步的方法数相乘,得到总数归纳一、知识讲解乘法运算是特定条件下加法运算的简化,分步乘法计数原理和分类加法计数原理也有这种类似的关系吗?思考二、小结区别分类加法计数原理应用概念分步乘法计数原理应用概念1填空题(1)一项工作可
14、以用 2 种方法完成,有 5 人只会用第 1 种方法完成,另有 4人只会用第 2 种方法完成,从中选出 1 人来完成这项工作,不同选法的种数是_;(2)从 A 村去 B 村的道路有 3 条,从 B 村去 C 村的道路有 2 条,从 A 村经B 村去 C 村,不同路线的条数是_答案:(1)9;(2)6三、练习三、练习2某电话局管辖范围内的电话号码由 8 位数字组成,其中前 4 位的数字是不变的,后 4 位数字都是 09 之间的一个数字,这个电话局不同的电话号码最多有多少个?答案:10 000 个3从 5 名同学中选出正、副组长各 1 名,有多少种不同的选法?答案:20 种三、练习4乘积(a1a2a3)(b1b2b3)(c1c2c3c4c5)展开后共有多少项?答案:45 项5在所有的两位数中,个位数字小于十位数字的有多少个?答案:36 个