- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c 第二章 程序的灵魂—算法1.ppt
第二章 程序的灵魂—算法 一、算法的概念 二、算法的简单举例 三、算法的特性 四、怎样表示一个算法 五、结构化程序设计 一、算法的概念 程序=数据结构+算法 程序=算法+数据结构+程序设计方法+语言工具和环境 算法:为了解决一个问题而采取的方法和步骤。 2.2简单算法举例 例2.1 求1×2 ×3 ×4 ×5 算法: s1:使p=1; s2: 使i=2; s3: 使p ×i ,乘积放在变量p中,表示p=p × i; s4: 使i的值加1,即i+1 i; s5: 如果不大于5,返回重新执行步骤s3和s5;否则算法结束。 p=120 题目:1×3 ×5 ×7 ×9 ×11 算法: s1:1 p s2:3 i s3:p× i p s4:i+2 i s5:若i≤11,返回s3;否则,结束。 例2.2 有50个学生,要求将他们之中成绩在80分以上者打印出来 用表示学生学号,ni代表第i个学生,g代表学生成绩,gi代表第i个学生成绩; 算法: s1:1 i; s2:如果gi≥80,则打印ni和gi,否则不打印 s3:i+1 i; s4:如果i≤50,返回s2,继续执行;否则,算法结束。 例2.3 判断2000-2500年中的闰年,将结果输出 判断闰年的条件: 1、能被4整除,但不能被100整除; 2、能被100整除,又能被400整除; s1:2000 y; s2:如果y不能被4整除,则输出y “不是闰年”转到s6 ; s3:若y能被4整除,不能被100整除,则输出y “是闰年”,然后转到s6. s4:若y能被100整除,又能被400整除,则输出y “是闰年”,然后转到s6. s5:输出“不是闰年”; s6:y+1 y; s7:当y≤2500时,转到s2继续执行,如果y≥2500时,算法结束。 例2.4 求1-1/2+1/3-1/4+…+1/99-1/100 算法分析: 1、符号变化规律 sign=(-1) ×sign 2、分母变化规律 deno=deno+1 3、每一项 term=sign ×(1/deno) 4、求和 sum=sum+term 5、起始值和终止值 算法 s1:sign=1 s2:deno=2 s3:sum=1 s4:sign=(-1) ×sign s5:term=sign ×(1/deno) s6:sum=sum+term s7:deno=deno+1 s8:若deno≤100返回s4;否则算法结束。 例2.5 对于一个大于或等于3的正整数,判断它是不是一个素数。 算法: s1:输入n的值; s2:i=2; s3:n被i除,得余数r; s4:如果r=0,表示n能被i整除,则打印n “不是素数” ,算法结束;否则执行s5; s5:i+1 i; s6:如果i≤n-1,返回s3;否则打印n“是素数”,然后结束。 2.3 算法的特性 1、有穷性; 2、确定性; 3、有零个或多个输入; 4、有一个或多个输出; 5、有效性; 2.4 怎样表示一个算法 一、用自然语言表示 二、用流程图表示 三、用N-S图表示 四、用伪代码表示 2.4.2 用流程图表示算法 流程图是用各种框图表示各种操作。 例2.6 将例2.1求5!的算法用流程图表示,流程图为: 例2.7 将例2.2的算法用流程图表示 例2.10 将例2.5判断素数的算法用流程图表示 2 三种基本结构 直到型循环 只有一个入口; 只有一个出口; 注意:菱形框有2个出口,选择结构的出口只有一个; 结构内的每一部分都有机会被执行到; 结构内不存在“死循环”; 基本结构 2.4.4 用N-S流程图表示算法 例2.11 求5!算法的N-S图表示 例2.12 求50名学生中成绩高于80分的学号和成绩打印出来的算法的N-S图表示 例2.13 将判断闰年的算法用N-S图表示 例2.14 求例2.4的算法的N-S图 例2.15 求例2.5判断素数的算法的N-S图 2.4.5 用伪代码表示算法 1、打印x的绝对值的算法 IF x is positive THEN print x ELSE print -x 图 2.24 A B 图 2.28 p ≥100 成立 不成立 r =0.08 r =0.06 当n ≤10 p×(1+r) = p A B A本身是一个分支结构,B是一个循环结构 1=i 图 2.30 g i≥80 是 否 打印n i g i i +1 = i 直到 i 50 图 2.29 i=2 t=1 t=t×i i=i+1 直到i>5 打印t i=1 图 2.31 直到i>50 i=i+1 i=i+1 i=1 直到i>50
您可能关注的文档
最近下载
- 市委党校物业管理服务总体方案.doc VIP
- 国有企业合规管理办法.pdf VIP
- 2024《盒马鲜生冷供应链物流成本现状、问题及完善对策研究》11000字.docx
- 机器视觉软件:Basler二次开发_(3).Basler相机驱动与SDK安装.docx
- 高中语文(统编版)必修上册+下册单元任务与人文主题 复习梳理.docx
- 2019年重庆市高职分类招生考试(中职类)药剂类真题.pdf VIP
- 2023年江苏省南京市玄武区中考物理二模试卷.docx VIP
- 发酵罐安全检修及维护操作规程.pdf VIP
- 部编版语文五年级上册第6课《将相和》学习任务群教学课件.pptx VIP
- 4x8-四层临街自住楼房住宅设计方案图纸户型图平面图布局图效果图建筑结构水电全套施工图纸.pdf VIP
文档评论(0)