第4章计算机中的问题求解.pptxVIP

  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文档。上传文档
查看更多

;2017/10/31;程序设计(Programing):

指利用计算机解决问题的全过程,它包含多方面的内容,而编写程序只是其中的一部分。;程序设计语言

用于书写计算机程序的语言

;算法

是对具体问题求解步骤的一种描述

;4.1程序设计的基本概念;算法的描述

用自然语言表示:就是用人们所熟悉的自然语言把算法的各个步骤依次表示出来

用流程图表示:就是用一些大家共识的专用图形符号和带有箭头的流程线来表示算法

用程序设计语言表示

;例:求1+2+3+…100的和

算法描述:

第1步:将i的初始值设为1,累加和s的初始值设为0

第2步:将s+i的值赋给s

第3步:将i的值+1

第4步:如果i的值=100重复第二步,否则执行下一步

第5步:输出结果s的值

;4.1程序设计的基本概念;传统流程图所用的基本符号表

;2017/10/31;常量与变量

常量

在程序执行过程中,其值不发生改变的量称为常量。

例如:

整型常量:12、0、-3;

实型常量:4.6、-1.23;

字符常量:‘a’、‘;变量

在程序运行过程中,其值可以改变的量称为变量。

一个变量有一个名字,变量通过其名字来访问

变量的访问主要有“读”和“写”两种操作

例:a=b+10;

;运算符

用于告知计算机对数据进行操作的类型、方式和功能

表达式

用运算符将运算对象(操作数或另一个表达式)连接起来的、符合语法规则的式子称为表达式。

;类别;例:算术表达式:3+5*a

赋值表达式:a=5

在这里需要特别说明的是赋值表达式,其形式为:

变量名=表达式

“=”符号称为赋值运算符

赋值号左边是变量名,右边是合法的表达式

赋值时自右向左读。赋值的含义是将右边表达式的值赋给左边的变量。;执行下列赋值语句后,写出a,b,c,d的结果。;4.2程序设计的构成要素;顺序结构、选择结构、循环结构;2017/10/31;为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则:;2017/10/31;极值问题--打擂台算法

先从所有参加“打擂”的人中选第一个人站在台上;

第二个人与之比较,胜者留在台上,败者下台;

再上去第3个人,与台上的现任擂主比较,胜者留在台上,败者下台;

循环往复,后面的每个人都与台上的人比较,直到所有人都比过为止,最后留在台上的就是冠军;;2、求和

在解决实际问题时经常遇到求和问题,如:

求s=2+4+6+……+2n的值,其中n为自然数,由键盘输入。

求和算法的一般步骤是:

设置一个放置和的变量,其初值设为0;

设置或输入初始加数;

利用循环操作,将每个加数依次加入放置和的变量中,每次循环后设置或输入新的加数;

循环结束后,和的变量里的值即为最终结果。

;开始;迭代算法

利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出一个新值

;迭代算法解决问题,需要做好以下三个方面的工作:;【例4.4】验证谷角猜想。日本数学家谷角静夫在研究自然数时发现了一个奇怪现象

对于任意一个自然数n,若n为偶数,则将其除以2;

若n为奇数,则将其乘以3,然后再加1。 如此经过有限次运算后,总可以得到自然数1。

人们把谷角静夫的这一发现叫做“谷角猜想”;谷角猜想:

由键盘输入一个自然数n,把n经过有限次运算后,最终变成自然数1的全过程打印出来。

算法分析:

定义迭代变量为n,按照谷角猜想的内容,可以得到两种情况下的迭代关系式:

当n为偶数时,n=n/2;

当n为奇数时,n=n*3+1。;用牛顿迭代法求方程的根

牛顿迭代法是牛顿17世纪提出的用于求方程或方程组近似根的一种常用算法。多数方程不存在求根公式,从而求精确根非常困难,甚至不可能,因此寻找方程的近似根就显得特别重要

设方程为f(x)=0,用数学方法导出等价的形式x=g(x),然后按以下步骤执行:

选一个方程的近似根,赋给变量x0;

将x0的值保存于变量x,然后计算g(x0),并将结果存于变量x0;

当x0与x的差的绝对值大于指定的精度要求时,重复步骤2的计算。;2017/10/31;枚举算法也称为穷举法

是编程中常用算法之一,就是按问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解,若是,采纳这个解,否则抛弃它。在列举的过程中,既不能遗漏也不能重复

;开始;在枚举算法中往往把问题分解成二部分:;【例4.8】百鸡百钱问题(公鸡5元,母鸡3元,1元3只小鸡花100元钱,买100只鸡,怎么买?)

算法分析:设公鸡x只,母鸡y只,小鸡(100-x-y)只,题目应满足5x+3y+(100-

文档评论(0)

粱州牧 + 关注
实名认证
文档贡献者

资料收集自互联网,若有侵权请联系删除,谢谢~

版权声明书
用户编号:8036120077000004

1亿VIP精品文档

相关文档