内容正文:
第六章 计数原理
6.1 分类加法计数原理与分步乘法计数原理
第2课时
1
旧知回顾
分类加法计数原理 分步乘法计数原理
关键词
区别
联系
分类
分步
各类方法之间是互斥的、并列的、独立的
各步之间是关联的、独立的,“关联”确保不遗漏,“独立”确保不重复
都是用来解决关于完成一件事的不同方法种数的问题
每类方法都能独立完成这件事
各步都完成,才能完成这件事
典例分析
例4 要从甲、乙、丙3幅不同的画中选出2幅,分别挂在左、右两边墙上的指定位置,共有多少种不同的挂法?
分析:要完成的一件事是“从3幅画中选出2幅,并分别挂在左、右两边墙上”,可以分步完成:
(法二)分步乘法
第1步:选1幅挂左边(3种:甲、乙、丙)
第2步:选1幅挂右边(2种选择)
(法一)分步乘法
第1步:选出2幅画(3种:甲乙、甲丙、乙丙)
第2步:对2幅画确定左右(2种挂法)
3×2=6
3×2=6
典例分析
解:从3幅不同的画中选出2幅分别挂在左、右两边墙上,要分两步完成:
第1步,从3幅画中选出1幅挂在左边墙上,有3种选法;
第2步,从剩下的2幅画中选出1幅挂在右边墙上,有2种选法.
根据分步乘法计数原理,共有3x2=6种不同的挂法.
例4 要从甲、乙、丙3幅不同的画中选出2幅,分别挂在左、右两边墙上的指定位置,共有多少种不同的挂法?
典例分析
例5 给程序模块命名,需要用3个字符,其中首个字符要求用字母A~G或U~Z,后两个字符要求用数字1~9,最多可以给多少个程序模块命名?
分析:要给一个程序模块命名,可以分三个步骤:第一步,选首字符;第二步,先中间字符;第三步,选末位字符.而首字符又可以分两类.
第1类:
第2类:
(7+6=13种)
从A~G中选出首字符(7种)
从U~Z中选出首字符(6种)
(9种)
第2步:选中间字符
第1步:选首字符
从数字1~9中选
第3步:选末位字符
(9种)
13×9×9=1053
典例分析
解:由分类加法计数原理,首字符共有7+6=13种不同的选法.
即最多可以给1053个程序模块命名.
后两个字符从1~9中选,因为数字可以重复,所以不同选法的种数都为9.
根据分步乘法计数原理,不同名称的个数是13×9×9=1053,
例5 给程序模块命名,需要用3个字符,其中首个字符要求用字母A~G或U~Z,后两个字符要求用数字1~9,最多可以给多少个程序模块命名?
思考:你还能给出不同的解法吗?
典例分析
例6 电子元件很容易实现电路的通与断、电位的高与底等两种状态,而这也是最容易控制的两种状态.因此计算机内部就采用了每一位只有0或1两种数字的记数法,即二进制.为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用1个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由8个二进制位构成.
(1)1个字节(8位)最多可以表示多少个不同的字符?
分析:(1)要完成的一件事是“确定1个字节各二进制位上的数字”,由于1个字节有8个二进制位,每一位上的数字有两种选择,可用分步乘法计数原理求解.
解:(1)用右图表示1个字节,每一格代表一位:
第1位
第2位
第3位
第8位
2种
2种
2种
2种
…
…
1个字节共有8位,每位上有2种选择,根据分步乘法计数原理,1个字节最多可以表示不同字符的个数是
2x2x2x2x2x2x2x2=28=256
典例分析
例6 (2)计算机汉字国标码(GB码)包含了6763个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?
分析:(2)只要计算出多少个字节所能表示的不同字符不少于6763个即可.
前1个字节有256种不同的表示方法,后1个字节也有256种表示方法,
(2)由(1)知1个字节表示的不同字符不够6763个,考虑2个字节能表示多少字符.
256×256=65536>6763.
根据分步乘法计数原理,2个字节可以表示不同字符的个数为
即要对汉字进行编码,每个汉字至少要用2个字节表示.
当堂演练
1. 某电话局管辖范围内的电话号码由8位数字组成,其中前4位数字是不变的,后4位数字都是0~9中的一个数字,这个电话局不同的电话号码最多有多少个?
2. 从5名同学中选出正、副组长各1名,有多少种不同的选法?
5. 由数字1,2,3,4,5可以组成多少个三位数(各位上的数字可以重复)?
①各位上的数字可以重复:
②各位上的数字不可以重复:
5×5×5=125(种)
5×4×3=60(种)
典例分析
例7 计算机编程人员在编写好程序以后需要对程序进行测试.程序员需要知道到底有多少条执行路(即程序从开始到结束的路线),以便知道需要提供多少个测试数据.一般地,一个程序模块由