1.2算法和算法的描述.ppt

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

一、算法一、算法一、算法二、算法的描述二、算法的描述二、算法的描述二、算法的描述二、算法的描述二、算法的描述二、算法的描述三、算法在解决问题中的地位和作用小结一、算法的概念二、算法的描述1,用自然语言描述2,用流程图描述3,用伪代码描述*算法和算法的描述1.1计算机解决问题的过程1一个人带一只羊、一只狼和一蓝菜过河,只有一只小船,一次只能带一个物品。如果羊和狼在一起,狼吃羊;如果羊和草在一起,羊吃草。怎样才能安全渡河?1.农夫带羊到右岸,独自返回左岸;2.农夫带狼到右岸,返回时白羊带回左岸;3.农夫把菜带到右岸,独自返回左岸;4.农夫把羊带到右岸,完成过河。

算法就是解决问题的方法和步骤31.1计算机解决问题的过程分析问题,找出解决问题的方法韩信点兵:41.1计算机解决问题的过程韩信说:“如果每三个人编入一队,最后剩下两个人;如果每5个人编入一队,最后剩下3个人;如果每7个人编入一队,最后剩下2个人。请你算一下我有多少士兵?”筛选法.首先写出“用3除余2”的数:2,5,8,11,14,17,20,23,26,29,…其中,“用5除余3”的数:8,23,…其中,“用7除余2”的数:23,…由此得到,23是最小的一个解。至于下一个解是什么,要把“…”写出来才知道;实践以后发现,是要费一点儿功夫的。韩信点兵:51.1计算机解决问题的过程61.1计算机解决问题的过程1.令X为1。2.如果X整除3余2,X整除5余3,X整除7余2,这就是题目要求的数,则记下这个X。3.令X为X+1(为下一次计算作准备)。4.如果算出,则结束;否则跳转2。5.写出答案。设所求的数为X,则X应满足:X整除3余2X整除5余3X整除7余2写出解题步骤分析问题(找出已知条件和未知条件、列出已知条件和未知条件之间的关系)71.1计算机解决问题的过程计算机解决问题的流程图81.1计算机解决问题的过程91.1计算机解决问题的过程算法:解决问题的方法与步骤1、算法的概念算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是求解某一问题的方法,是能被机械地执行的动作或指令的集合。2、算法的特征(1)输入。一个算法有零个或多个输入。零个输入的例子:Privatesubcommand1_click()a=3:b=4Printa*bEndsub(2)确定性。算法的每一个步骤必须要确切地定义。例1:这个人好说话。例2:健美操中一个动作:“手举过头顶”。2、算法的特征(3)有穷性。一个算法在执行有穷步之后必须结束。反例:S1:sum=0S2:I=1S3:sum=sum+IS4:I=I+1S5:若sum=0,返回s3;否则,算法结束。(4)输出。算法有一个或多个输出。(5)能行性。表示算法的语言有哪几种?表示算法的语言有自然语言、流程图、伪代码。1、用自然语言描述算法例:求200-500能被5整除的所有正整数。(1)分析问题。设能被5整除的数为I,令I=200,201,202,……,500,如果I是能被5整除的数,则输出I;否则,检查下一个I,直到I=500为止。(2)设计算法①令I=200;②如果I能被5整除,则输出I;③I=I+1;④如果I=500,则返回第②;⑤结束。1、用自然语言描述算法用自然语言描述算法优点:描述的算法通俗易懂。缺点:自然语言具有歧义性,容易导致算法执行的不确定性。自然语言描述的算法太长。当算法中循环和分支较多时,很难清晰地表示出来。自然语言表示的算法不便翻译成计算机程序设计语言。2、用流程图描述算法表示算法流向出口或入口连接点连接点?表示算法中的流向流程线?表示算法中的判断判定?表示算法中变量的计算或赋值处理?表示算法中变量的输入或输出输入/输出?表示算法的开始或结束起始/结束功能名称图形2、用流程图描述算法例:求200-500能被5整除的所有正整数。开始I=200I能被5整除输出I的值I=I+1I=500结束是否否是2、用流程图描述算法用流程图描述算法优点:描述清晰简洁,不依赖计算机和计算机程序设计语言。缺点:画起来费事,难以阅读,难以修改。3、用

文档评论(0)

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

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

1亿VIP精品文档

相关文档