



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 程序设计的方法1.模块化:(1) 把一个较大的程序划分为若干子程序,每一个子程序解决一个总是独立成为一个模块;(2) 每一个模块又可继续划分为更小的子模块;(3) 程序具有一种层次结构。注:运用这种编程方法,考虑问题必须先进行整体分析,避免边写边想。2.自顶向下:(1) 先设计第一层(即:顶层),然后步步深入,逐层细分,逐步求精,直到整个问题可用程序设计语言明确地描述出来为止。(2) 步骤: 首先对问题进行仔细分析,确定其输入、输出数据,写出程序运行的主要过程和任务; 然后从大的功能方面把一个问题的解决过程分成几个问题,每个子问题形成一个模块。 (3) 特点:先整体后局部,先抽象后具体。3.
2、自底向上:(1) 即先设计底层,最后设计顶层;(2) 优点:由表与里、由浅入深地解决问题; (3) 不足:在逐步细化的过程中可能发现原来的分解细化不够完善;(4) 注意:该方法主要用于修改、优化或扩充一个程序。4.例子:求1到n之间的素数。解:要求1到n之间的素数,程序要做的事就是从1开始依次找,判断是否是素数,是则打印出来,否则继续往下找,直到n为止。于是初步设想成:beginread(n);number:=2;while numbern do beginif number是一个素数 then write(number); number取下一个值;endend.第二步:细化“number是一
3、个素数”与“number取下一个值”。 (1) 细化“number是一个素数”:“number是一个素数”这是一个布尔值,当number是一个素数时为true,否则为false。细化如下:k:=2;lim:=number-1; repeat if nubmer能被k整除 then prim:=falseelse begink:=k+1;prim:=true;end;until not(prim) or (k达到lim);(2) 细化“number取下一个值”:number:=number+1;第三步:细化“number能被k整除”与“k达到lim”。(1) 细化“number能被k整除”: n
4、umber mod k=0;(2) 细化“k达到lim”:k<=lim;第四步:补充完整程序。第五步:从所有的素数除了2之外都是奇数的角度出发优化程序。程序设计步骤:1.分析问题:对要解决的问题,首先必须分析清楚,明确题目的要求,列出所有已知量,找出题目的求解围、解的精度等。例“第10周练习”第7题兔子的繁殖问题,必须找出其繁殖规律。2.建立数学模型: 对实际问题进行分析之后,找出它的在规律,就可以建立数学模型。只有建立了模型的问题,才能可能利用计算机来解决。如上例,可推出递推公式un=un-1+un-2(这是菲波那契数列)3.选择算法:建立数学模型后,还不能着手编程序,必须根据数据结构
5、,解决问题的算法。一般选择算法要注意:(1) 算法的逻辑结构尽可能简单;(2) 算法所要求的存贮量应尽可能少;(3) 避免不必要的循环,减少算法的执行时间;(4) 在满足题目条件要求下,使所需的计算量最小。4.编写程序: 把整个程序看作一个整体,先全局后局部,自顶向下,一层一层分解处理,如果某些子问题的算法一样而仅参数不同,可以用子程序来表示。5.调试运行;6.分析结果;7.写出程序的文档:主要是对程序中的变量、函数或过程作必要的说明,解释编程思路,画出框图,讨论运行结果等。返回上页4 / 41. 若不给自己设限,则人生中就没有限制你发挥的藩篱。2. 若不是心宽似海,哪有人生风平浪静。在纷杂的尘世里,为自己留下一片纯静的心灵空间,不管是潮起潮落,也不管是阴晴圆缺,你都可以免去浮躁,义无反顾,勇往直前,轻松自如地走好人生路上的每一步3. 花一些时间,总会看清一些事。用一些事情,总会看清一些人。有时候觉得自己像个神经病。既纠结了自己,又打扰了别人。努力过后,才知道许多事情,坚持坚持,就过来了。4. 岁月是无情的,假如你丢给它的是一片空白,它还给你的也是一片空白。岁月是有情的,假如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年户外配电安装工安全及技能资格知识考试题与答案
- 美团外卖骑手培训体系
- 家校社协同育人背景下家庭教育指导能力提升培训
- 城市交通规划教育咨询重点基础知识点
- 企业安全培训体系构建与实践
- 水田清理协议书
- 运营服务中心合同协议
- 车祸出院医疗协议书模板
- 水表互换协议书
- 朋友签订协议书
- 2022水利工程建设项目档案管理规程
- 辅导员考试的重点知识与试题
- 档案法律法规相关试题及答案
- 润滑油委托加工合同
- 企业信息化管理与应用考核试卷
- 杭州市萧山区招录高学历事业人员笔试真题2024
- 2025-2030中国汽车检测行业发展分析及发展趋势预测报告
- 2025年中国高消费旅客出境游洞察
- 港口建设现场汛期风险管理及防范措施
- 2025年重庆中考语文a试题及答案2024
- 大学生的人际交往困境与突破
评论
0/150
提交评论