加法原理做一件事情,完成它可以有n类办法,在第一类办法中有m1种不同的方法,在第二类办法中有m2种不同的方法,……,在第n类办法中有mn种不同的方法。那么完成这件事共有N=m1+m2+…+mn种不同的方法。乘法原理做一件事情,完成它需要分成n个步骤,做第一步有m1种不同的方法,做第二步有m2种不同的方法,……,做第n步有mn种不同的方法,那么完成这件事有N=m1×m2×…×mn种不同的方法。例1、(1)将3封信投入4个不同的信箱,共有_______种不同的投法;(2)4名学生争夺3项冠军,每项冠军只能由一人获得,则冠军归属有______种;(3)将4个不同的球放入3个不同的盒子,共有_____种不同的放法;(4)3个不同元素的集合到4个不同元素的集合的映射的个数为______。43433443例2、用6张一角纸币,4张一元纸币,3张五元纸币,共能组成不同币值为多少种?分析:一角纸币可以取0张,1张,2张……6张,共7种取法;共有7×5×4=140种不同取法,每种取法对应不同币值又每种币值取0张,不能构成币值,故所求币值总数为140-1=139同理:一元硬币有5种取法,五元纸币有4种取法例3、用五种不同的颜色给图中四个区域涂色,每个区域涂一种颜色。(1)共有多少种涂色方法?(2)若要求有公共边的区域不同色,那么共有多少种不同的涂色方法?1234(2)分析:若1、4两个区域同色,则此时,共有5×4×1×4=80涂法;若1、4两个区域不同色,则1区域有5种涂法,2区域有4种涂法,4区域有3涂法,3区域有3种涂法,此时,共有5×4×3×3=180种涂法。故共有80+180=260种涂法。变形:如图,一个地区分为5个行政区域,现给地图着色,要求相邻区域不得使用同一种颜色,现有4种颜色可供选择,则不同的着色方法共有________种。12345答案:72种1区域有5种涂法,2区域有4种涂法,例4.电子元件很容易实现电路的通与断、电位的高与底等两种状态,而这也是最容易控制的两种状态。因此计算机内部就采用了每一位只有0或1两种数字的计数法,即二进制,为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用一个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由8个二进制位构成,问(1)一个字节(8位)最多可以表示多少个不同的字符?(2)计算机汉字国标码(GB码)包含了6763个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示?第1位第2位第3位第8位2种2种2种2种……如00000000,10000000,11111111.开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A例5.计算机编程人员在编写好程序以后要对程序进行测试。程序员需要知道到底有多少条执行路径(即程序从开始到结束的线),以便知道需要提供多少个测试数据。一般的,一个程序模块由许多子模块组成,它是一个具有许多执行路径的程序模块。问:这个程序模块有多少条执行路径?另外为了减少测试时间,程序员需要设法减少测试次数,你能帮助程序员设计一个测试方式,以减少测试次数吗?开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A分析:整个模块的任意一条路径都分两步完成:第1步是从开始执行到A点;第2步是从A点执行到结束。而第1步可由子模块1或子模块2或子模块3来完成;第二步可由子模块4或子模块5来完成。因此,分析一条指令在整个模块的执行路径需要用到两个计数原理。开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A再测试各个模块之间的信息交流是否正常,需要测试的次数为:3*2=6。如果每个子模块都正常工作,并且各个子模块之间的信息交流也正常,那么整个程序模块就正常。这样,测试整个模块的次数就变为172+6=178(次)2)在实际测试中,程序员总是把每一个子模块看成一个黑箱,即通过只考察是否执行了正确的子模块的方式来测试整个模块。这样,他可以先分别单独测试5个模块,以考察每个子模块的工作是否正常。总共需要的测试次数为:18+45+28+38+43=172。例6.随着人们生活水平的提高,某城市家庭汽车拥有量迅速增长,汽车牌照号码需要扩容。交通管理部门出台了一种汽车牌照组成办法,每一个汽车牌照都必须有3个不重复的英文字母和3个不重复的阿拉伯数字,并且3个字母必须合成一组出现,3个数字也必须合成一组出现,那么这种办法共能给多少辆汽车上牌照?