算法及其描述.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

算法及其描述制作人:罗志华一、算法的概念两个大人和两个小孩一起渡河,渡口只有一条小船,一次只能渡过一个大人或两个小孩,他们四人都会划船,但都不会游泳。一、算法的概念过河的方案:第一步:两个小孩同船渡过河去;第二步:一个小孩划船回来;第三步:一个大人独自划船渡过河去;第四步:对岸的小孩划船回来;第五步:两个小孩再同船渡过河去;第六步:一个小孩划船回来;第七步:余下的一个大人独自划船渡过河去;第八步:对岸的小孩划船回来;第九步:两个小孩再同船渡过河去。一、算法的概念这个过河的方案就是这道趣味题的算法。算法就是解决问题的方法和步骤。在以后的编程中也要记住了,有些步骤是可以颠倒的,不影响程序的结果;但是有些一但颠倒了那最终的结果也就全变了。算法——解决问题的方法和步骤。

算法+数据结构=程序。二、如何描述算法1、用自然语言描述算法2、用流程图描述算法3、用伪代码描述算法

1、用自然语言描述算法自然语言——人们日常生活中使用的语言。

此种语言的特点:通俗语易懂,缺乏直观性和简洁,且易产生歧义。

使用此种语言的注意事项:描述要求尽可能精确,详尽。

2、用流程图描述算法特点:描述算法形象、直观,容易理解。

流程图符号:3、用伪代码描述算法特点:描述的算法简、易懂,修改容易,容易转化为程序语言代码。例:分析闰年的算法描述

第一个条件:ymod4=0

判断闰年的条件:⑴y不能被100整除;⑵y能被400整除且y能被400整除。

判断不是闰年的条件:⑴ymod4=0且ymod100=0,但y不能被400整除;⑵y不能被4整除。3、用伪代码描述算法表示条件判断语句

IF条件THEN执行语句一ELSE执行语句二

ENDIF条件语句中可以包含多个子语句表示循环处理语句:DoWhile条件循环语句

Loop实践:比较自然语言、流程图和伪代码3种描述方法的优缺点。三、算法的设计与选择200年前的一天,一位数学教师走进课堂,也许是想清静一个小时,给四年级的学生们布置了一道题:从1加到100。5分钟后,一个学生走到他跟前,交上了正确答案,这时他是多么吃惊呀!这怎么可能呢?这个孩子一定是个天才。求9147485和5147480两个数的最大公约数。三、算法的设计与选择算法的设计,直接影响着程序的通用性和解决问题的效率,总的来说,一个好的算法,应该是科学而又合理的算法。第1步:输入26个英文字母,它们分别对应1~26个数学。第2步:令a=1,k=3,n=26。第3步:使a的取值范围为1≤a≤26,F(a)=(a+k)modn,转第5步。第4步:a=a+1,转第3步。第5步:输出F(a)相对应的数字。第6步:把数学转化成相当的字母,输出字母第7步:累计字母出现顺序,转第4步。练习:现有一串字母“PROGRAM”给它加密,请设计算法,用自然语言描述。

实践练习:一天,小猴子从树上摘下若干个桃子,当即吃了一半,觉得不过瘾,又吃了一个。第二天小猴子接着吃剩下的一半,还觉得不过瘾,又吃了一个。以后每天都是吃前一天剩下的一半后,就再多吃了一个。到第四天,只剩下一下桃子。试设计一个算法流程图,求小猴子第一天摘下了多少个桃子。**例:用自然语言描述摩斯密码的原理

文档评论(0)

***** + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档