程序设计方法课标解读
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序设计方法标解读
&ldqu; 算法&rdqu; 是关于解决问题的计算过程的描述,即解决问题的方法和步骤的描述;&ldqu; 程序设计&rdqu; 是使用计算机可理解的语言表达算法的过程。本模块反映了计算机解决结构化应用问题的基本方法,为选修模块。
通过本模块的学习,学生应该体验算法思维,掌握几种基本算法;能设计简单应用问题的算法,并能初步使用一种程序设计语言,编制程序解决该问题。
本模块的教学,要强调理论与实践的结合,注意寻找、发现身边简单的实际问题,进而设计出算法和计算机程序去解决这些问题。本模块着重强调的是算法设计思想,故对程序设计语言不作具体规定,应根据实际条加以选择。
本模块由3 个主题组成:
一)计算机解决问题的基本过程
1.内容标准
1)了解算法和计算机程序的基本概念,了解计算机程序
执行的基本过程。
2)了解算法的表示方法,能用自然语言、流程图、伪代
码等描述算法,重点掌握流程图描述算法的方法。
例1 农夫、狼、山羊和蔬菜过河问题。一个农夫带着一条狼、
头山羊和一篮蔬菜过河,但只有一条小船,并且每次只能
让农夫带样东西过河,而且农夫在场的情况下动物和蔬菜
均相安无事,一旦农夫不在,狼会吃羊,羊会吃蔬菜。问聪明的农夫如何解决过河问题。
例2 求解Su=1+2+……+n
例3 两个正整数最大公因子的计算问题。
3)了解程序设计环境的基本知识,了解程序设计语言、
编辑程序、编译程序、连接程序以及程序开发的环境。
2.活动建议
选择若干简单的数学计算问题,在教师的指导下,学生分小组设计相应的算法,并使用某种方法描述这些算法。
二)面向对象程序设计语言初步
1.内容标准
1)理解使用一种面向对象程序设计语言的基本方法,掌
握对象及其封装、事驱动、继承、方法和事的概念;理解数据类型和表达式的构成及描述计算过程的三种基本结构。
例1 顺序结构实例:交换两个数据的算法。
例2 选择结构实例:求两个数中的大数的算法。
例3 循环结构实例:求解1+2+……+100 问题。
例4 鸡兔共笼,一共有30 个头,90 只脚,求鸡兔各有多少只?2)理解模块化的程序设计方法。
3)掌握从源程序到可执行程序的生成方法。
4)掌握调试、运行指定程序的方法。
2.活动建议
选择一个实例,根据解决问题的要求,设计算法,编写源程序,生成对应的可执行程序,调试并运行该程序。
三)常用算法
用解析法设计算法
1.内容标准
1)了解解析法的基本概念及用解析法设计算法的基本过
程。
2)能够用解析法分析简单问题并设计算法及编写程序求
解问题。
例1 求解一元二次方程根的算法。使用一根长度为L 厘米的
铁丝,制作一个面积为S 的矩形框,要求计算出满足这种条的矩形的长h和宽(归结成求一元二次方程aX2+bX+=0的根)。
例2 两个日期之间天数的计算。计算从1年1 月d1 日起,到2 年2月d2 日之间的天数。
2.活动建议
1)上机实习:获得解决解析法中两个实例的可执行程序。
2)从数学、物理、化学学科的学习中选择计算问题,确
定解决该问题所需的计算公式,并用流程图描述问题的计算过程,编写程序,获得计算结果。
用穷举法设计算法
1.内容标准
1)了解穷举法的基本概念及用穷举法设计算法的基本过
程。
2)能够根据具体问题的要求,使用穷举法设计算法,编
写程序求解问题。
例1
张单据上有一个位数的号码,其中百位数和千位数已
模糊不清,但知道该数能被7 或67 除尽。设计一个算法,找出该单据原有可能的号码。
例2
在一个直角三角形中,三条边a,b, 的长度都为整数,
条直角边a 的长度已确定(例如为8),斜边的长度不能超
过某数I (例如为100 ),找出满足条的所有直角三角形。2.活动建议
1)上机实习:获得解决穷举法中两个实例的可执行程序。
2)从生活实际中选择需要用穷举法计算的问题,确定解
决该问题所需的计算公式,并用流程图描述问题的计算过程,编写程
序,获得计算结果。
查找和排序算法
1.内容标准
1)了解数组的概念及使用数组存储大量数据的基本方法。
2)掌握数据查找的基本算法。
3)掌握基本的排序算法。
例1 使用顺序查找算法和对分查找算法查找特定数据。
例2 使用选择交换算法对数据进行排序。
2.活动建议
1)上机实习:根据学校体育比赛数据,使用顺序和对分
查找算法分别设计一个程序,以查找某个班级或者某个运动员的比赛成绩。
2)上机实习:设计一个程序,按照选择交换法,把学校
运动会比赛成绩(无序)按减序排序后存贮。
用递归法设计算法
1.内容标准
1)了解使用递归法设计算法的基本过程。
2)掌握根据问题的递归定义写出求解问题的递归函数,
以求得问题解的方法。
例1 写出两个正整数乘积Xn 递归函数。
例2 写出阶乘n! 的递归函数。
2.活动建议
机实习,获得递归算法中两个实例的可执行程序。