6.1分类加法计数原理与分步乘法计数原理(第3课时)第6章计数原理人教A版2019必修第三册学习目标1.进一步理解和掌握分类加法计数原理和分步乘法计数原理;2.能应用两个计数原理解决实际问题.两个计数原理的区别与联系用两个计数原理解决问题时,要明确是需要分类还是需要分步,有时,可能既要分类又要分步分类加法计数原理分步乘法计数原理相同点用来计算完成一件事的方法种类不同点分类完成,类类相加分步完成,步步相乘每类方案中的每一种方法都能独立完成这件事每步依次完成才算完成这件事(每步中的一种方法不能独立完成这件事)注意点类类独立,不重不漏步步相依,步骤完整例7计算机编程人员在编写好程序以后需要对程序进行测试.程序员需要知道到底有多少条执行路(即程序从开始到结束的路线),以便知道需要提供多少个测试数据.一般地,一个程序模块由许多子模块组成,如图,这是一个具有许多执行路径的程序模块。(1)这个程序模块有多少条执行路径?(2)为了减少测试时间,程序员需要设法减少测试次数,你能帮助程序员设计一个测试方式,以减少测试次数吗?开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A例题讲解开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A分析:整个模块的任意一条执行路径都分两步完成:第1步是从开始执行到A点;第2步是从A点执行到结束.而第1步可由子模块1、子模块2、子模块3中任何一个来完成;第2步可由子模块4、子模块5中任何一个来完成.因此,分析一条指令在整个模块的执行路径需要用到两个计数原理.例题讲解开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A解:(1)由分类加法计数原理,子模块1、子模块2、子模块3中的子路径条数共为18+45+28=91条;子模块4、子模块5中的子路径条数共为38+43=81条;由分步乘法计数原理,整个模块的执行路径条数共为91x81=7371条例题讲解(2)在实际测试中,程序员总是把每一个子模块看成一个黑箱,即通过只考察是否执行了正确的子模块的方式来测试整个模块.这样,他可以先分别单独测试5个模块,以考察每个子模块的工作是否正常.总共需要的测试次数为18+45+28+38+43=172.再测试各个模块之间的信息交流是否正常,需要测试的次数为:3x2=6.如果每个子模块都正常工作,并且各个子模块之间的信息交...