2012届高三数一轮复习基础导航:17.2算法语句与算法案例.docVIP

2012届高三数一轮复习基础导航:17.2算法语句与算法案例.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
17.2算法语句与算法案例 【考纲要求】 理解几种基本算法语句(输入语句、输出语句、赋值语句、条件语句和循环语句) 的含义。 【基础知识】 《一》基本算法语句 一.输入语句、输出语句、赋值语句的格式与功能 语句 一般格式 功能 输入语句 INPUT“提示内容”;变量 输入信息 输出语句 PRINT“提示内容”;表达式 输出常量、变量的值和系统信息 赋值语句 变量=表达式 将表达式的值赋给变量 1.输入、输出、赋值语句是任何一个算法中必不可少的语句。 一个语句可以输出多个表达式。在赋值语句中,变量的值始终等于最近一次赋给它的值,先前的值将被替换。 2.一个赋值语句只给一个变量赋值,但一个语句行可以写出多个赋值语句。 3.不能利用赋值语句进行代数式的演算(如化简、因式分解、解方程等)。 注:输入语句没有计算功能,而输出语句、赋值语句有计算功能。 4.在BASIC语言中,常见运算符号的书写方式 5.BASIC语言中的运算规则 先乘除,后加减;乘幂优先于乘除;函数优先于乘幂;同级运算从左向右按顺序进行;括号内最优先。 二.条件语句 (1)算法中的条件结构与条件语句相对应; (2)条件语句的格式及框图 ①IF—THEN格式 ②IF—THEN—ELSE格式 1.条件语句一般用在需要对条件进行判断的算法设计中,求分段函数的函数值往往用条件语句编写程序。 2.条件语句可以嵌套,即条件语句的THEN或ELSE后面还可以跟条件语句,其一般形式是: 对应的程序框图为: 3.条件语句常用运算符 注:条件语句必须以IF语句开始,以END IF语句结束,一个IF语句必须和一个END IF对应,尤其对条件语句的嵌套编程时,不要漏掉END IF。 三.循环语句 (1)算法中的循环结构与循环语句相对应。 (2)循环语句的格式及框图。 ①UNTIL语句 ②WHILE语句 注:计算机是按怎样的顺序执行循环语句的?(使用循环语句的关键是辨认出算法在执行过程中的循环特征,若先考虑判断,再进行循环,则使用当型(WHILE型)循环;若先进行循环,再判断,则使用直到型(UNTIL型)循环,直到型循环语句至少执行一次循环体,而当型循环语句则可能一次也执行循环体,二者本质上是相同的,可以相互转化。) 《二》算法案例 一、辗转相除法 辗转相除法求两个数的最大公约数,其算法可以描述如下: ① 输入两个正整数和; ② 求余数:计算除以,将所得余数存放到变量中; ③更新被除数和余数:=,=; ④判断余数是否为0。若余数为0,则输出结果;否则转向第②步继续循环执行 如此循环,直到得到结果为止。 二、更相减损术 我国早期也有解决求最大公约数问题的算法,就是更相减损术。在《九章算术》中记 载了更相减损术求最大公约数的步骤:可半者半之,不可半者,副置分母?子之数,以少减多,更相减损,求其等也,以等数约之 步骤: Ⅰ.任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。 Ⅱ.以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。 三、秦九韶算法 秦九韶算法的一般规则: 秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+….++的求值问题。用秦九韶算法求一般多项式f(x)= anxn+an-1xn-1+….+a1x+a0当时的函数值,可把次多项式的求值问题转化成求个一次多项式的值的问题,即求 v0=an =+ v2=v1x+an-2 v3=v2x+an-3 …… =+ 观察秦九韶算法的数学模型,计算vk时要用到vk-1的值,若令v0=an。 我们可以得到下面的递推公式:v0=an vk=vk-1+an-k(k=1,2,…n) 这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现 四、排序 排序的算法很多,课本主要介绍里两种排序方法:直接插入排序和冒泡排序 (1)直接插入排序 在日常生活中,经常碰到这样一类排序问题:把新的数据插入到已经排好顺序的数据列中。 例如:一组从小到大排好顺序的数据列{1,3,5,7,9,11,13},通常称之为有序列,我们用序号1,2,3,……表示数据的位置,欲把一个新的数据8插入到上述序列中。 完成这个工作要考虑两个问题: (1)确定数据“8”在原有序列中应该占有的位置序号。数据“8”所处的位置应满足小于或等于原有序列右边所有的数据,大于其左边位置上所有的数据。 (2)将这个位置空出来,将数据“8”插进去。 对于一列无序的数据列,例如:{49,38,65,97,76,13,27,49},如何使用这种方法进行排序呢

文档评论(0)

yyanrlund + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档