1、1.3中国古代数学中的算法案例1.秦九韶算法能解决下列问题中的()A.求两个正整数的最大公约数B.多项式求值C.进位制的转化计算D.排序问题答案:B2.用辗转相除法求168与72的最大公约数,要做n次除法运算,那么n为()A.2B.3C.4D.5答案:A3.284和1024的最小公倍数是()A.1024B.142C.72704D.568答案:C4.用秦九韶算法求多项式f(x)=6x5+x4+4x3+5x2+3x+2在x=-3时的值的过程中,所做的加法次数为a,乘法次数为b,则a,b的值为()A.a=4,b=4B.a=5,b=5C.a=5,b=4D.a=6,b=5答案:B5.用秦九韶算法求多项式
2、f(x)=2+0.35x+1.8x2-3.66x3+6x4-5.2x5+x6在x=-1.3时,令v0=a6;v1=v0x+a5;v6=v5x+a0时,v3的值为()A.-9.8205B.14.25C.-22.445D.30.9785答案:C6.下面程序的目的是()a=input(“a=”);b=input(“b=”);whileabifa=b a=a-b;else b=b-a;endendaA.求a/b的余数B.求a,b的最小公倍数C.求a被b整除的商D.求a,b的最大公约数解析:先看循环条件,当ab时,循环体的内容是作差(大数-小数),当a=b即差和减数相同时,退出循环,算法与我们学过的更相
3、减损之术相同.答案:D7.用更相减损之术求36和134的最大公约数,第一步应为.解析:第一步为较大的数减去较小的数.答案:134-36=988.用秦九韶算法求多项式f(x)=12+35x-8x2+79x3+6x4+5x5+3x6在x=-4的值时,其中v1的值为.解析:由题意知:v0=3,v1=3(-4)+5=-7.答案:-79.在右面程序框图中,若输入m=333,n=1813,则输出结果为.解析:该程序框图的功能就是用“更相减损之术”求m与n的最大公约数.由于1813-333=1480,1480-333=1147,1147-333=814,814-333=481,481-333=148,333
4、-148=185,185-148=37,148-37=111,111-37=74,74-37=37,于是333和1813的最大公约数是37,故输出结果为37,37.答案:37,3710.求三个数168,54,264的最大公约数.解:采用更相减损之术先求168与54的最大公约数.(168,54)(114,54)(60,54)(6,54)(6,48)(6,42)(6,36)(6,30)(6,24)(6,18)(6,12)(6,6),故168和54的最大公约数为6.采用辗转相除法求6与264的最大公约数.因为264=446+0,所以6为264与6的最大公约数,也即三个数的最大公约数是6.11.已知f
5、(x)=2-3x-2x2+3x4-4x5+x6,用秦九韶算法求f(2)的值.解:f(x)=2-3x-2x2+3x4-4x5+x6=x6-4x5+3x4+0x3-2x2-3x+2=(x-4)x+3)x+0)x-2)x-3)x+2.于是v0=1,v1=12-4=-2,v2=(-2)2+3=-1,v3=(-1)2+0=-2,v4=(-2)2-2=-6,v5=(-6)2-3=-15,v6=(-15)2+2=-28.故f(2)=-28.12.已知n次多项式Pn(x)=a0xn+a1xn-1+an-1x+an,如果在一种算法中,计算x0k(k=2,3,4,n)的值需要k-1次乘法,(1)计算P3(x0)的
6、值需要9次运算(6次乘法,3次加法),那么计算Pn(x0)的值需要多少次运算?(2)若采取秦九韶算法:P0(x)=a0,Pk+1(x)=xPk(x)+ak+1(k=0,1,2,n-1),计算P3(x0)的值只需6次运算,那么计算Pn(x0)的值共需要多少次运算?(3)若采取秦九韶算法,设ai=i+1,i=0,1,n,求P5(2)(写出采取秦九韶算法的计算过程).解:直接法中乘法运算的次数最多可达到(n+1)n2,加法最多n次.秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次.(1)n(n+3)2.(2)2n.(3)因为P0(x)=a0,Pk+1(x)=xPk(x)+ak+1,所以P0(2)=1,P1(2)=2P0(2)+2=4;P2(2)=2P1(2)+3=11;P3(2)=2P2(2)+4=26;P4(2)=2P3(2)+5=57;P5(2)=2P4(2)+6=120.