内容正文:
6.1分类加法计数原理与分步乘法计数原理
(第2课时)
人教A版2019必修第三册
1.分类加法计数原理:
完成一件事有两类不同方案,在第1类方案中有m种不同的方法,在第2类方案中有n 种不同的方法,那么完成这件事共有N=m+n种不同的方法.
推广:如果完成一件事有n类不同方案,在第1类方案中有m1种不同的方法,在第2类方案中有m2种不同的方法,…,在第n类方案中有 mn种不同的方法,那么完成这件事的方法总数为 N=m1+m2+…+mn.
复习引入
2.分步乘法计数原理:
完成一件事需要两个步骤,做第1步有 m种不同的方法,做第2步有n 种不同的方法,那么完成这件事共有N=m×n种不同的方法.
推广:如果完成一件事需要n个步骤,做第1步有m1种不同的方法,做第2步有m2种不同的方法,…,做第n步有mn种不同的方法,那么完成这件事的方法总数为N=m1×m2×…×mn
复习引入
两个计数原理的区别与联系
分类加法计数原理 分步乘法计数原理
相同点 用来计算完成一件事的方法种类
不同点 分类完成,类类相加 分步完成,步步相乘
每类方案中的每一种方法都能独立完成这件事 每步依次完成才算完成这件事(每步中的一种方法不能独立完成这件事)
注意点 类类独立,不重不漏 步步相依,步骤完整
例4.要从甲、乙、丙3幅不同的画中选出2幅,分别挂在左右两边墙上的指定位置,问共有多少种不同的挂法?
分析:要完成的一件事情是“3幅不同的画中选出2幅,并分别挂在左右两边墙上”,可以分步完成.
解:从3幅画中选出2幅,分别挂在左右两边墙上,可以分两个步骤完成:第1步,从3幅画中选1幅挂在左边墙上,有3种选法:第2步,从剩下的2幅画中选1幅挂在右边墙上,有2种选法.根据分步乘法计数原理,不同挂法的种数N=3×2=6.
6种挂法如图6.1-2所示
左边 右边 得到的挂法
甲
乙
丙
图6.1-2
左甲右乙
左甲右丙
左乙右甲
左乙右丙
左丙右甲
左丙右乙
乙
丙
甲
丙
甲
乙
例5 给程序模块命名,需要用3个字符,其中首字符要求用字母
A~G或U~Z,后两个要求用数字1 ~9,最多可以给多少个程序命名?
解2: 首字符用A~G给程序命名的个数为 7×9×9=567.
首字符用U~Z给程序命名的个数为 6×9×9=486.
∴总的不同名称的个数是 567+486=1053.
思考 你还能给出不同的解法吗?
解: 由分类加法计数原理,首字符不同选法的种数为
7+6=13.
后两个字符从1~9中选,因为数字可以重复,所以不同选法的种数都为9.
由分步乘法计数原理,不同名称的个数是
13×9×9=1053,
即最多可以给1053个程序模块命名.
例6 电子元件很容易实现电路的通与断、电位的高与低等两种
状态,而这也是最容易控制的两种状态. 因此计算机内部就采用了每一位只有0或1两种数字的记数法,即二进制. 为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用1个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由8个二进制位构成.
(1) 1个字节(8位)最多可以表示多少个不同的字符?
(2) 计算机汉字国标码包含了6763个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?
解: (1) 由分步乘法计数原理,1个字节最多可以表示不同的字符个数是
2×2×2×2×2×2×2×2=28=256.
(2) 由(1)知,1个字节最多可以表示256个不同的字符,则2个字节最多就可以表示256 ×256=65536>6763,所以每个汉字至少要用2个字节表示.
例7 计算机编程人员在编写好程序以后需要对程序进行测试.程序员需要知道到底有多少条执行路(即程序从开始到结束的路线),以便知道需要提供多少个测试数据.一般地,一个程序模块由许多子模块组成,如图,这是一个具有许多执行路径的程序模块。
(1)这个程序模块有多少条执行路径?
(2)为了减少测试时间,程序员需要设法减少测试次数,你能帮助程序员设计一个测试方式,以减少测试次数吗?
开始
子模块1
18条执行路径
子模块3
28条执行路径
子模块2
45条执行路径
子模块5
43条执行路径
子模块4
38条执行路径
结束
A
例题讲解
开始
子模块1
18条执行路径
子模块3
28