1、1.1 分类加法计数原理与分步乘法计数原理分类加法计数原理与分步乘法计数原理计数原理2008年年29届夏季奥运会在北京举行奥运会足届夏季奥运会在北京举行奥运会足球赛共有个队参赛它们先分成个小组球赛共有个队参赛它们先分成个小组进行循环赛,决出强,这个队按确定的程进行循环赛,决出强,这个队按确定的程序进行淘汰赛后,最后决出冠亚军,此外还决序进行淘汰赛后,最后决出冠亚军,此外还决出了第三、第四名问一共安排了多少场比赛?出了第三、第四名问一共安排了多少场比赛?要回答这个问题,就要用到排列、组合的知要回答这个问题,就要用到排列、组合的知识识在运用排列、组合方法时,经常要用到在运用排列、组合方法时,经常要
2、用到问题问题2 2 秋天到了,学校举行秋天到了,学校举行“全民健身全民健身”登登山活动山活动,山的南面有山的南面有3 3条登山路线条登山路线,山的北面山的北面有有2 2条登山路线条登山路线,要登上山顶要登上山顶,问共有多少种问共有多少种不同的路线?不同的路线?问题问题1 1 某班级有某班级有3434位男生位男生,15,15位女生位女生,现现要选一位同学参加演讲比赛要选一位同学参加演讲比赛,则有多少种不则有多少种不同的选法?同的选法?探究探究1 1:你能说说以上两个问题的共同特征吗?:你能说说以上两个问题的共同特征吗?分类加法计数原理分类加法计数原理 完成一件事有两类不同方案,在第完成一件事有两
3、类不同方案,在第1 1类类方案中有方案中有m m种不同的方法种不同的方法,在第在第2 2类方案中有类方案中有n n种不同的方法种不同的方法.那么完成这件事共有那么完成这件事共有 N=m+nN=m+n种不同的方法种不同的方法.问题问题2 2 秋天到了,学校举行秋天到了,学校举行“全民健身全民健身”登山活动登山活动,山山的南面有的南面有3 3条登山路线条登山路线,山的北面有山的北面有2 2条登山路线条登山路线,要登上要登上山顶山顶,问共有多少种不同的路线?问共有多少种不同的路线?问题问题1 1 我们班级有我们班级有3434位男生位男生,15,15位女生位女生,现要选一位同学现要选一位同学参加演讲比
4、赛参加演讲比赛,则有多少种不同的选法?则有多少种不同的选法?,在第在第1 1类方案中类方案中有有m m种不同的方法种不同的方法,在第在第2 2类方案中有类方案中有n n种不同的方法种不同的方法.那么完成这件事共有那么完成这件事共有 N=m+nN=m+n种不同的方法种不同的方法.完成一件事完成一件事有两类不同方案有两类不同方案例例1 1:在填写高考志愿表时在填写高考志愿表时,一名高中毕业生了一名高中毕业生了解到解到,A,B,A,B两所大学各有一些自己感兴趣的强项两所大学各有一些自己感兴趣的强项专业,具体情况如下:专业,具体情况如下:A A大学大学 B B大学大学 生物学生物学 数学数学 化学化学
5、 会计学会计学 医学医学 信息技术学信息技术学 物理学物理学 法学法学 工程学工程学如果这名同学只能选择一个专业如果这名同学只能选择一个专业,那么他共有多那么他共有多少种选择呢?少种选择呢?想一想想一想 在填写高考志愿表时在填写高考志愿表时,一名高中毕业一名高中毕业生了解到生了解到,A,B,C,A,B,C三所大学各有一些自己感兴趣三所大学各有一些自己感兴趣的强项专业,具体情况如下:的强项专业,具体情况如下:生物学生物学 数学数学 化学化学 会计学会计学 医学医学 信息技术学信息技术学 物理学物理学 法学法学 工程学工程学如果这名同学只能选择一个专业如果这名同学只能选择一个专业,那么他共有多那么
6、他共有多少种选择呢?少种选择呢?C C大学大学环境科学环境科学地质学地质学车辆工程车辆工程探究探究2 2:如果完成一件事有三类不同方案:如果完成一件事有三类不同方案,在第在第1 1类方案中有类方案中有m m1 1种不同的方法种不同的方法,在第在第2 2类类方案中有方案中有m m2 2种不同的方法,在第种不同的方法,在第3 3类方案中类方案中有有m m3 3种不同的方法种不同的方法,那么完成这件事共有多那么完成这件事共有多少种不同的方法?少种不同的方法?N=m1+m2+m3想一想:想一想:如果完成一件事情有如果完成一件事情有n n类不同方案,类不同方案,在每一类中都有若干种不同方法,那么应当在每
7、一类中都有若干种不同方法,那么应当如何计数呢?如何计数呢?一般归纳:一般归纳:完成一件事情,有完成一件事情,有n类方案,在第类方案,在第1类办法中有类办法中有 种不同的方法,在第种不同的方法,在第2类方案中有类方案中有 种不同的方法种不同的方法在第在第n类方案中有类方案中有 种不同的方法种不同的方法.那么完成这件那么完成这件事共有事共有 种不同的方法种不同的方法.1m2mnm12nNmmm1 1、一件工作可以用一件工作可以用2 2种方法完成,有种方法完成,有5 5人会用第人会用第1 1种种方法完成,另有方法完成,另有4 4人会用第人会用第2 2种方法完成,从中选出种方法完成,从中选出1 1人来
8、完成这件工作,不同选法的种数是人来完成这件工作,不同选法的种数是 .2 2、现有高中一年级的学生现有高中一年级的学生3 3名,高中二年级的学名,高中二年级的学生生5 5名,高中三年级的学生名,高中三年级的学生4 4名名.从中任选从中任选1 1人参加人参加接待外宾的活动,有多少种不同的选法?接待外宾的活动,有多少种不同的选法?3 3、用一个大写英文字母或一个阿拉伯数字给教室用一个大写英文字母或一个阿拉伯数字给教室里的座位编号,总共能编出多少种不同的号码?里的座位编号,总共能编出多少种不同的号码?练习:练习:问题问题3 3 用前用前6 6个大写英文字母和个大写英文字母和1 19 9九个阿拉伯九个阿
9、拉伯数字,以数字,以 ,,,的方式给教室的方式给教室里的座位编号,总共能编出多少个不同的号码?里的座位编号,总共能编出多少个不同的号码?1A2A1B2B问题问题4 4 某班级有某班级有3434位男生位男生,15,15位女生位女生,现要从中选现要从中选出男生、女生各一名同学参加演讲比赛出男生、女生各一名同学参加演讲比赛,则共有多则共有多少种不同的选法?少种不同的选法?探究探究3 3:你能说说以上两个问题的共同特征吗?:你能说说以上两个问题的共同特征吗?探究探究4 4:你能试着解决这两个问题吗?:你能试着解决这两个问题吗?分步乘法计数原理分步乘法计数原理 完成一件事需要分二个步骤,在完成一件事需要
10、分二个步骤,在第第1 1步中有步中有m m种不同的方法,在第种不同的方法,在第2 2步步中有中有n n种不同的方法种不同的方法.那么完成这件那么完成这件事共有事共有 N=N=m mx xn n 种不同的方法种不同的方法.如果如果做一件事情,完成它需要做一件事情,完成它需要n n个个步步骤,在第一骤,在第一步步中有中有m m1 1种不同的方法,在第二种不同的方法,在第二步步中有中有m m2 2种不同的法,种不同的法,在在第第n n步步中有中有m mn n类不同的方法,那么完成这件事情有类不同的方法,那么完成这件事情有 N=mN=m1 1m m2 2m m3 3.m mn n种不同的方法种不同的方
11、法.如果如果做一件事情,完成它需要三个步骤,在第一做一件事情,完成它需要三个步骤,在第一步步中中有有m m1 1种不同的方法,在第二种不同的方法,在第二步步中有中有m m2 2种不同的法,在第三种不同的法,在第三步步中有中有m m3 3类不同的方法,那么完成这件事情有类不同的方法,那么完成这件事情有 N=mN=m1 1m m2 2m m3 3种不同的方法种不同的方法.分类计数原理与分步计数原理有什么异同?分类计数原理与分步计数原理有什么异同?不同点:分类计数原理与不同点:分类计数原理与“分类分类”有关,各种有关,各种方法相互独立,用其中任何一种方法都可以完成这方法相互独立,用其中任何一种方法都
12、可以完成这件事;分步计数原理与件事;分步计数原理与“分步分步”有关,各个步骤相有关,各个步骤相互依存,只有各个步骤都完成了,这件事才算完互依存,只有各个步骤都完成了,这件事才算完成成 相同点:分类计数原理与分步计数原理都是涉及相同点:分类计数原理与分步计数原理都是涉及完成一件事的不同方法的种数的问题。完成一件事的不同方法的种数的问题。分类计数原理分类计数原理 分步计数原理分步计数原理完成一件事,共有完成一件事,共有n类类办法,关键词办法,关键词“分类分类”区别区别1完成一件事,共分完成一件事,共分n个个步骤,关键词步骤,关键词“分步分步”区别区别2区别区别3每类办法都能独立地完成每类办法都能独
13、立地完成这件事情,它是独立的、这件事情,它是独立的、一次的、且每次得到的是一次的、且每次得到的是最后结果,最后结果,只须一种方法只须一种方法就可完成这件事就可完成这件事。每一步得到的只是中间结果,每一步得到的只是中间结果,任何一步都不能独立完成这件任何一步都不能独立完成这件事,缺少任何一步也不能完成事,缺少任何一步也不能完成这件事,这件事,只有各个步骤都完成只有各个步骤都完成了,才能完成这件事了,才能完成这件事。各类办法是互相独立的。各类办法是互相独立的。各步之间是互相关联的。各步之间是互相关联的。即:即:类类独立,步步关联类类独立,步步关联。书架的第书架的第1层放有层放有4本不同的计算机书,
14、第本不同的计算机书,第2层放有层放有3本不同的文艺书,第本不同的文艺书,第3层放有层放有2本不同的本不同的体育书体育书(1)从书架上任取)从书架上任取1本书,有多少种不同的取法?本书,有多少种不同的取法?(2)从书架的第)从书架的第1、2、3层各取层各取1本书,有多少种本书,有多少种不同的取法?不同的取法?例例3.要从甲、乙、丙要从甲、乙、丙3幅不同的画中选出幅不同的画中选出2幅,幅,分别挂在左、右两边墙上的指定位置,问共分别挂在左、右两边墙上的指定位置,问共有多少种不同的挂法?有多少种不同的挂法?解:第1步:从3幅画中选1幅挂在左边墙上,有3种选法第2步:从剩下的2幅画中选1幅挂在右边墙上,
15、有2种选法根据分步乘法计数原理,不同挂法的种数是N326 1 1、在由电键组在由电键组A、B组成的串联电路中,组成的串联电路中,如图,要接通电源,使电灯发光的方法如图,要接通电源,使电灯发光的方法有几种?有几种?练习:练习:2、某学校的一个班级组织学生义务献血,在体、某学校的一个班级组织学生义务献血,在体检合格的学生中,是检合格的学生中,是o型血的有型血的有10人,人,A型血型血的有的有7人,人,B型血的有型血的有8人,人,AB型血的有型血的有5人,人,(1)从中任选)从中任选1名学生去献血,有多少种不同的名学生去献血,有多少种不同的选法?选法?练习:练习:(2)从四种血型的学生中各选)从四种
16、血型的学生中各选1名学生去献血,名学生去献血,有多少种不同的选法?有多少种不同的选法?(3)从中任选)从中任选2名具有不同血型的学生去献血,名具有不同血型的学生去献血,有多少种不同的选法?有多少种不同的选法?例例4、给程序模块命名,需要用、给程序模块命名,需要用3个字符,其中首个字符,其中首字符要求用字母字符要求用字母AG或或UZ,后两个要求用数字,后两个要求用数字19,问最多可以给多少个程序命名?,问最多可以给多少个程序命名?解:第解:第1步:选首字符,共有步:选首字符,共有7613种选法种选法第第2步:选中间字符,共有步:选中间字符,共有9种选法种选法第第3步,选最后一个字符,共有步,选最
17、后一个字符,共有9种选法种选法根据分步计数原理,最多可以有根据分步计数原理,最多可以有13991053个不同的名称个不同的名称 例例5 5 核糖核酸(核糖核酸(RNARNA)分子是在生物细胞中发现的化学)分子是在生物细胞中发现的化学成分,一个成分,一个RNARNA分子是一个有着数百个甚至数千个位置的分子是一个有着数百个甚至数千个位置的长链,长链中每一个位置上都由一种称为碱基的化学成分长链,长链中每一个位置上都由一种称为碱基的化学成分所占据所占据.总共有总共有4 4种不同的碱基,分别用种不同的碱基,分别用A A,C C,G G,U U表示表示.在一个在一个RNARNA分子中,各种碱基能够以任意次
18、序出现,所以分子中,各种碱基能够以任意次序出现,所以在任意一个位置上的碱基与其他位置上的碱基无关在任意一个位置上的碱基与其他位置上的碱基无关.假设假设有一类有一类RNARNA分子由分子由100100个碱基组成,那么能有多少个不同的个碱基组成,那么能有多少个不同的RNARNA分子?分子?A AG GC CU UA AA AA AU U G GG GC CC C4 4100100个个 例例6 6 电子元件很容易实现电路的通与断、电位的高与电子元件很容易实现电路的通与断、电位的高与低等两种状态,而这也是最容易控制的两种状态低等两种状态,而这也是最容易控制的两种状态.因此计因此计算机内部就采用了每一位
19、只有算机内部就采用了每一位只有0 0或或1 1两种数字的记数法,即两种数字的记数法,即二进制二进制.为了使计算机能够识别字符,需要对字符进行编为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用一个或多个字节来表示,其中字节是码,每个字符可以用一个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由计算机中数据存储的最小计量单位,每个字节由8 8个二进个二进制位构成制位构成.问:问:(1 1)一个字节()一个字节(8 8位)最多可以表示多少个不同的字符?位)最多可以表示多少个不同的字符?(2 2)计算机汉字国际码()计算机汉字国际码(GBGB码)包含了码)包含了6 7
20、636 763个汉字,一个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?少要用多少个字节表示?(1)256(1)256个个 (2)2(2)2个个 例例7 7 计算机编程人员在编写好程序以后需要对计算机编程人员在编写好程序以后需要对程序进行测试,程序员需要知道到底有多少条执程序进行测试,程序员需要知道到底有多少条执行路径(即程序从开始到结束的路线),以便知行路径(即程序从开始到结束的路线),以便知道需要提供多少个测试数据道需要提供多少个测试数据.一般地,一个程序模一般地,一个程序模块由许多子模块组成块由许多子模块
21、组成.如图所示是一个具有许多执如图所示是一个具有许多执行路径的程序模块行路径的程序模块.(1 1)这个程序模块有多少条执行路径;)这个程序模块有多少条执行路径;(2 2)为了减少测试时间,程序员需要设法减少测)为了减少测试时间,程序员需要设法减少测试次数,你能帮助程序员设计一个测试方法,以试次数,你能帮助程序员设计一个测试方法,以减少测试次数吗?减少测试次数吗?开始开始子模块子模块1 11818条执行路径条执行路径子模块子模块5 54343条执行路径条执行路径子模块子模块4 43838条执行路径条执行路径子模块子模块3 32828条执行路径条执行路径子模块子模块2 24545条执行路径条执行路
22、径结束结束A A73717371条条178178次次 例例8 8 随着人们生活水平的提高,某城市家庭汽车拥有随着人们生活水平的提高,某城市家庭汽车拥有量迅速增长,汽车牌照号码需要扩容量迅速增长,汽车牌照号码需要扩容.交通管理部门出台交通管理部门出台了一种汽车牌照组成方法,每一个汽车牌照都必须有了一种汽车牌照组成方法,每一个汽车牌照都必须有3 3个个不重复的英文字母和不重复的英文字母和3 3个不重复的阿拉伯数字,并且个不重复的阿拉伯数字,并且3 3个字个字母必须合成一组出现,母必须合成一组出现,3 3个数字也必须合成一组出现个数字也必须合成一组出现.那么那么这种办法共能给多少辆汽车上牌照?这种办
23、法共能给多少辆汽车上牌照?共能给共能给22 464 00022 464 000辆汽车上牌照辆汽车上牌照.用两个计数原理解决计数问题时,最重要的是在开始用两个计数原理解决计数问题时,最重要的是在开始计算之前要进行仔细分析计算之前要进行仔细分析需要分类还是需要分步。需要分类还是需要分步。分类要做到分类要做到“不重不漏不重不漏”,分步要做到,分步要做到“步骤完整步骤完整”要从甲、乙、丙要从甲、乙、丙3名工人中选出名工人中选出2名分别上日班和晚名分别上日班和晚班,有多少种不同的选法?班,有多少种不同的选法?练习:练习:从数字从数字1、2、3、4、5中任选三个数字中任选三个数字可以组成多少个无重可以组成
24、多少个无重复数字的三位数?复数字的三位数?2、乘积(乘积(a1+a2+a3)()(b1+b2+b3+b4)()(c1+c2+c3+c4+c5)展开后共有多少项?展开后共有多少项?4、由数字由数字0 0,1 1,2 2,3 3,4 4,5 5可以组成多少个有重复数字的三位数?可以组成多少个有重复数字的三位数?5 5、个班分别从个风景点中选择一处游览,不同选法的种数个班分别从个风景点中选择一处游览,不同选法的种数是是还是还是?集合集合A=1,2,3,4,B=5,6,7,从从A到到B的映射有多少个?的映射有多少个?某中学的一幢某中学的一幢5层教学楼共有层教学楼共有3处楼梯,问从处楼梯,问从1楼到楼到
25、5楼共楼共有多少种不同的走法?有多少种不同的走法?A AD DC CB B8、用用5 5种不同颜色给图中种不同颜色给图中A A,B B,C C,D D四个区域涂色,每个区域只四个区域涂色,每个区域只涂一种颜色,相邻区域的颜色不同,求共有多少种不同的涂色方法?涂一种颜色,相邻区域的颜色不同,求共有多少种不同的涂色方法?9、如图,从甲地到乙地有如图,从甲地到乙地有2条路,从乙地到丁地有条路,从乙地到丁地有3条路;从条路;从甲地到丙地有甲地到丙地有4条路可以走,从丙地到丁地有条路可以走,从丙地到丁地有2条路。从甲地到条路。从甲地到丁地共有多少种不同地走法?丁地共有多少种不同地走法?甲地甲地丙地丙地丁
26、地丁地乙地乙地 10、如图如图,该电路该电路,从从A到到B共有多少条不同的线路可通电?共有多少条不同的线路可通电?AB集合集合A=1,2,-3,B=-1,-2,3,4 从从A,B 中各取中各取1个元素作为个元素作为点点P(x,y)的坐标的坐标(1)可以得到多少个不同的点?)可以得到多少个不同的点?(2)这些点中,位于第一象限的有几个?)这些点中,位于第一象限的有几个?在所有的两位数中,个位数字比十位数字大的两位数有多少在所有的两位数中,个位数字比十位数字大的两位数有多少个?个?甲、乙、丙甲、乙、丙3个班各有三好学生个班各有三好学生3,5,2名,现准备推选名,现准备推选两名来自不同班的三好学生去
27、参加校三好学生代表大会,共有两名来自不同班的三好学生去参加校三好学生代表大会,共有几种不同的推选方法几种不同的推选方法.14、有架楼梯共有架楼梯共6 6级,每次只允许上一级或两级,求上完这架楼梯级,每次只允许上一级或两级,求上完这架楼梯共有多少种不同的走法?共有多少种不同的走法?某艺术组有某艺术组有9 9人,每人至少会钢琴和小号中的一种乐器,其中人,每人至少会钢琴和小号中的一种乐器,其中7 7人会钢琴,人会钢琴,3 3人会小号,从中选出会钢琴与会小号的各人会小号,从中选出会钢琴与会小号的各1 1人,有多人,有多少种不同的选法?少种不同的选法?16、将一个四棱锥的每个顶点染上一种颜色,并使同一条
28、棱上的将一个四棱锥的每个顶点染上一种颜色,并使同一条棱上的两端点颜色不同,如果只有两端点颜色不同,如果只有5 5种颜色可供使用,求共有多少种不同种颜色可供使用,求共有多少种不同的染色方法?的染色方法?S SD DC CB BA A用用0,1,2,9可以组成多少个可以组成多少个8位号码;位号码;用用0,1,2,9可以组成多少个有两个重复可以组成多少个有两个重复数字的数字的4位整数位整数 用用0,1,2,9可以组成多少个无重复数字可以组成多少个无重复数字的的4位奇数;位奇数;用用0,1,2,9可以组成多少个有重复数字可以组成多少个有重复数字的的4位整数;位整数;用用0,1,2,9可以组成多少个无重
29、复数字可以组成多少个无重复数字的的4位整数;位整数;用用0,1,2,9可以组成多少个可以组成多少个8位整数;位整数;17、例例5.核糖核酸(核糖核酸(RNA)分子是在生物细胞中发现的化学成分,一个)分子是在生物细胞中发现的化学成分,一个RNA分子分子是一个有着数百个甚至数千个位置的长链,长链中每一个位置上都由一种称是一个有着数百个甚至数千个位置的长链,长链中每一个位置上都由一种称为碱基的化学成分所占据,总共有个不同的碱基,分别用为碱基的化学成分所占据,总共有个不同的碱基,分别用A,C,G,U表表示,在一个示,在一个RNA分子中,各种碱基能够以任意次序出现,所以在任意一个位分子中,各种碱基能够以
30、任意次序出现,所以在任意一个位置上的碱基与其他位置上的碱基无关。假设有一类置上的碱基与其他位置上的碱基无关。假设有一类RNA分子由分子由100个碱基组个碱基组成,那么能有多少种不同的成,那么能有多少种不同的RNA分子?分子?UUUAAACCCGGG分析分析:用用100个位置表示由个位置表示由100个碱基组成的长链,每个位置都可以从个碱基组成的长链,每个位置都可以从A、C、G、U中任选一个来占据。中任选一个来占据。第1位第2位第3位第100位4种4种4种4种解:解:100个碱基组成的长链共有个碱基组成的长链共有100个位置,在每个位置中,从个位置,在每个位置中,从A、C、G、U中任选一个来填入,
31、每个位置有中任选一个来填入,每个位置有4种填充方法。根据分步计数原理,共有种填充方法。根据分步计数原理,共有100410044444个 种不同的种不同的RNA分子分子.例例6.电子元件很容易实现电路的通与断、电位的高与底等两种电子元件很容易实现电路的通与断、电位的高与底等两种状态,而这也是最容易控制的两种状态。因此计算机内部就采状态,而这也是最容易控制的两种状态。因此计算机内部就采用了每一位只有用了每一位只有0或或1两种数字的计数法,即二进制,为了使计两种数字的计数法,即二进制,为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用一算机能够识别字符,需要对字符进行编码,每个字符可以用一
32、个或多个字节来表示,其中字节是计算机中数据存储的最小计个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由个二进制位构成,问量单位,每个字节由个二进制位构成,问(1)一个字节()一个字节(8位)最多可以表示多少个不同的字符?位)最多可以表示多少个不同的字符?(2)计算机汉字国标码()计算机汉字国标码(GB码)包含了码)包含了6763个汉字,一个汉个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?少个字节表示?第1位第2位第3位第8位2种2种2种2种如如00000000,10000000,1
33、1111111.开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A例例7.计算机编程人员在编计算机编程人员在编写好程序以后要对程序进写好程序以后要对程序进行测试。程序员需要知道行测试。程序员需要知道到底有多少条执行路(即到底有多少条执行路(即程序从开始到结束的线),程序从开始到结束的线),以便知道需要提供多少个以便知道需要提供多少个测试数据。一般的,一个测试数据。一般的,一个程序模块又许多子模块组程序模块又许多子模块组成,它的一个具有许多执成,它的一个具有许多执行路径的程序模块。问:行路径的程序模块。问:这个程序模块有多少条
34、执这个程序模块有多少条执行路径?另外为了减少测行路径?另外为了减少测试时间,程序员需要设法试时间,程序员需要设法减少测试次数,你能帮助减少测试次数,你能帮助程序员设计一个测试方式,程序员设计一个测试方式,以减少测试次数吗?以减少测试次数吗?开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A分析:分析:整个模块的任整个模块的任意一条路径都分两步意一条路径都分两步完成完成:第:第1步是从开步是从开始执行到始执行到A点;第点;第2步步是从是从A点执行到结束。点执行到结束。而第步可由子模块而第步可由子模块1或子模块或子模块2或子模块
35、或子模块3来完成;第二步可由来完成;第二步可由子模块子模块4或子模块或子模块5来来完成。因此,分析一完成。因此,分析一条指令在整个模块的条指令在整个模块的执行路径需要用到两执行路径需要用到两个计数原理。个计数原理。开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A再测试各个模块之间的信再测试各个模块之间的信息交流是否正常,需要测息交流是否正常,需要测试的次数为:试的次数为:3*2=6。如果每个子模块都正常工如果每个子模块都正常工作,并且各个子模块之间作,并且各个子模块之间的信息交流也正常,那么的信息交流也正常,那么整个程序模块就正常。整个程序模块就正常。这样,测试整个这样,测试整个模块的次数就变为模块的次数就变为 172+6=178(次)(次)2)在实际测试中,程序)在实际测试中,程序员总是把每一个子模块看员总是把每一个子模块看成一个黑箱,即通过只考成一个黑箱,即通过只考察是否执行了正确的子模察是否执行了正确的子模块的方式来测试整个模块。块的方式来测试整个模块。这样,他可以先分别单独这样,他可以先分别单独测试测试5个模块,以考察每个模块,以考察每个子模块的工作是否正常。个子模块的工作是否正常。总共需要的测试次数为:总共需要的测试次数为:18+45+28+38+43=172。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。