复数 算法初步 课件_第1页
复数 算法初步 课件_第2页
复数 算法初步 课件_第3页
复数 算法初步 课件_第4页
复数 算法初步 课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

新课标高中一轮总复习第八单元复数、算法初步第58讲基本算法语句与算法案例1.理解输入语句、输出语句、赋值语句、条件语句、循环语句这五种算法语句的含义.2.能准确地实现程序框图与算法语句的互相转化。3.了解秦九韶算法、辗转相除法与更相减损术等特殊案例的算法思想和算法语句.1.某一程序中先后相邻的两个语句是:x=3*5,x=x+1,那么下列说法中正确的是()①x=3*5的意思是x=3×5=15,此式与算术式中的意义是一样的;②x=3*5是将数值15赋给x;③x=3*5也可以写为3*5=x;④x=x+1在执行时,赋值号右边的x值是15,执行后左边的x值是16.BA.①③B.②④C.①④D.②③2.运行如图所示的程序后,输出的结果为()Ci=1WHILEi<7i=i+1S=2*i-1i=i+2WENDPRINTS,iENDA.13,7B.7,4C.9,7D.9,5

由程序知该算法循环了两次,第一次,S=2×2-1=3,i=4;第二次,S=2×5-1=9,i=7.因为i≥7,循环结束,输出S=9,i=7.3.把二进制数1011001(2)化为五进制数是

.324(5)1011001(2)=1×26+1×24+1×23+1=89,所以89=324(5).4.程序如下:以上程序输出的结果是

.t=1i=2WHILEi≤4t=t*ii=i+1WENDPRINTtEND24

由题意可知,它表示计算1×2×3×…×n的算法,所以输出的结果为1×2×3×4=24.一、基本算法语句1.输入、输出语句和赋值语句:输入语句格式:①

;输出语句格式:②

;赋值语句格式:③

.2.条件语句:(1)框图:INPUT“提示内容”;变量PRINT“提示内容”;表达式变量名=表达式(2)条件语句格式:IF条件THEN

语句1ELSE

语句2ENDIF条件语句的嵌套:条件语句④

,当出现3个或3个以上的判断点时,就要用到⑤

,其一般格式为:主要用于实现算法中的条件结构程序嵌套IF表达式1THEN

语句序列1;ELSEIF表达式2THEN

语句序列2ELSE

语句序列3ENDIFENDIF3.循环语句:(1)WHILE语句的结构WHILE语句的一般格式:WHILE条件循环体END(2)UNTIL语句的结构:UNTIL语句的一般格式:DO循环体LOOPUNTIL条件

二、算法案例

1.辗转相除法与更相减损术.(1)辗转相除法:⑥.

.

,反复操作,直到余数为0为止,即m=nt+r(0≤r≤n).因此要用“后测试型”循环语句表示,其程序如下:求两个正整数的最大公约数的方法.用较大的数m除以较小的数n得到余数rINPUTm,nDOr=mMODnm=nn=rLOOPUNTILr=0PRINTmEND(2)更相减损术是⑦

.

.

用较大数减去较小数,再用差数和较小数构成一对新数,再用大数减去小数,以同样的操作一直做下去,直到所得的数相等为止.这一过程可由循环语句表达算法,其程序如下:求两个正整数的最大公约数的算法INPUTa,bWHILEa<>bIFa>=bTHENa=a-bELSEb=b-aENDIFWENDPRINTa,bEND2.秦九韶算法.n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0=(anxn-1+an-1xn-2+…+a1)x+a0…=(((…(anx+an-1)x+an-2)x+…+a1)x+a0得到递推公式v0=an且vk=vk-1x+an-k,其中k=1,2,…,n.其算法可用循环语句来实现.3.排序.

直接插入排序法:⑧.

..

冒泡法的排序算法步骤:第一步:用第1个数与第2个数比较,若前者小则两个数不变,否则调整两数位置.

第二步:按同样的规则,比较第2个数与第3个数,……直到比较完最后两数,这个过程称为“一趟”.从第一个数开始,依次把每个数插入到已排好序的适当位置,直到完成对最后一个数的操作

第三步:如果前一趟比较中交换次数为0,说明排序已完成,否则返回第二步.4.进位制.(1)将十进制数化为二进制数的算法称为⑨

;将十进制数化为k进制数的算法称为⑩

.(2)将k进制数化为十进制数的算法步骤为:第一步:从左到右依次取k进制数anan-1…

a1a0(k)各位上的数字乘以k次幂,k从n开始取值,每次递减1,递减到0,即an·kn,an-1·kn-1,…,a1·k,

a0·k0;

第二步:把所有积加起来,就得到十进制数.除2取余法除k取余法题型一基本算法语句及应用例1

高一(2)班共有54名同学参加数学竞赛,现已有这54名同学的竞赛分数,请设计一个程序,求成绩优秀同学的平均分(规定90分以上为优秀).由于涉及54名同学的分数,因此,可以使用循环结构控制输入分数,用条件结构来判断分数是否高于90分,同时统计高于90分的成绩的总和和人数,从而求平均分.S=0M=0i=1WHILEi≤54INPUTxIFx>90THENS=S+xM=M+1ENDIFi=i+1WENDP=S/MPRINTPEND

程序设计如下:

在解决实际问题时,要正确理解其中的算法思想,根据题目写出其关系式,再写出相应的算法.在循环语句中,也可能嵌套条件语句,甚至是循环语句,此时需要注意嵌套这些语句需要保证语句完整性,否则就会造成程序无法执行.

因庆期间,某超市实行购物优惠活动,规定一次购物付款总额:①若不超过200元,则不予优惠;②若超过200元,但不超过500元,则按标价价格给予9折优惠;③如果超过500元,500元的部分按②优惠,超过500元的部分给予7折优惠.编写一个收款的相应程序.

程序如下:INPUTxIFx≤200THENPRINTxELSEIFx>200ANDx≤500THENy=0.9*xPRINTyELSEy=0.9*500+0.7*(x-500)PRINTyENDIFENDIFEND题型二程序框图与程序的相互转化例2

某商场购物实行优惠措施,若购物金额x在800元以上打8折;购物金额x在500元以上打9折,否则不打折.请设计程序框图,并根据框图编写程序,要求输入金额x,输出实际交款额.

根据题意,实际交款额y(元)与购物金额x(元)的函数关系如下:

x(0<x≤500)0.9x(500<x≤800)0.8x(x>800).程序框图如下:y=程序如下:INPUTxIFx>800THENy=0.8*xELSEIFx>500THENy=0.9*xELSEy=xENDIFENDIFPRINTyEND

解决分段函数的求值问题时,一般采用条件结构设计算法.如果变量分为三级(或以上),就需要用到条件结构的嵌套.另外,不能忽视结果中“是”和“否”的书写,否则不知执行哪一条路径.

现给出某班50名同学的数学成绩,60分以上为及格.要求统计及格人数和全班同学的平均分,画出程序框图,并写出程序语句.

程序框图如右图所示.程序如下:i=1S=0t=0DOINPUTxS=S+xIFx>=60THENt=t+1ENDIFi=i+1LOOPUNTILi>50p=S/50PRINTpPRINTtEND

该题主要运用算法的条件结构及条件语句正确表达算法,关键是理解变量x的作用,用x来表示某学生的分数,每循环一次输入一个x的值,表示及格人数的变量t与表示学生人数的变量i均加1.题型三算法案例例3

用秦九韶算法求多项式f(x)=8x7+5x6+3x4+2x+1当x=2时的值.

利用秦九韶算法一步一步地代入运算,注意本题中有几项不存在,此时在计算时,我们应该将这些项加上,比如含有x3的这一项可看做0·x3.

根据秦九韶算法,把多项式写成如下形式:f(x)=8x7+5x6+0·x5+3x4+0·x3+0·x2+2x+1=((((((8x+5)x+0)x+3)x+0)x+0)x+2)x+1,v0=8v1=8×2+5=21,v2=21×2+0=42,v3=42×2+3=87,v4=87×2+0=174,v5=174×2+0=348,v6=348×2+2=698,v8=698×2+1=1397.所以当x=2时,多项式的值为1397.

秦九韶算法是多项式求值的优秀算法,其特点是:(1)化高次多项式求值为一次多项式求值;(2)减少了运算次数,提高了效率;(3)步骤重复执行,容易用计算机实现.利用秦九韶算法计算多项式的值关键是能正确地将所给多项式改写,然后由内向外逐次计算,由于后项计算用到前项的结果,故应认真、细心,确保中间结果的准确性,若在多项式中有几项不存在,可将这些项的系数看成0,即把这些项看做0×xn.(1)将七进制数235(7)转化为十进制的数;(2)把五进制的数44(5)转化为二进制的数.

(1)把七进制数写成各位上数字与7的幂的乘积之和的形式,再按十进制的运算得到结果;(2)先把五进制的数化为十进制的数,再化为二进制的数.

(1)235(7)=2×72+3×71+5×70=2×49+3×7+5=124.(2)44(5)=4×51+4×50=24.所以24=11000(2).(1)用辗转相除法或更相减损术求三个数324,243,135的最大公约数.(2)某工程的工序流程如图所示,现已知工程总时数为10天,则工序c所需工时为多少天?

(1)(方法一)辗转相除法:324=243×1+81,243=81×3+0,则34与243的最大公约数是81.又135=81×1+54,

81=54×1+27,

54=27×2+0,则81与135的最大公约数为27.故三个数34,243,135的最大公约数为27.(方法二)更相减损术:因为(324,243)→(243,81)→(162,81)→(81,81),又(135,81)→(81,54)→(54,27)→(27,27),所以324,243,135的最大公约数为27.(2)设工序c所需工时数为x天,由题意,a→c→e→g,需要工时数1+x+4+1=10,所以x=4,即工序c所需工时数为4天.1.关于条件语句.(1)“条件”是由一个关系表达式或逻辑表达式构成的,其一般形式为“〈表达式〉〈关系运算符〉〈表达式〉”,常用的运算符有“>”(大于)、“<”(小于)、“>=”(大于或等于)、“<=”(小于或等于),表达式的结果可取两个值,以“真”或“假”来表示,“真”表示条件满足,“假”表示条件不满足.(2)“语句”是由程序语言中所有语句构成的程序段,即可以是语句组.(3)条件语句可以嵌套,即条件语句的THEN或ELSE后面还可以跟条件语句,其一般形式是:IF条件1THEN

语句1ELSEIF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论