APP下载

浅谈如何开展《算法与程序设计》教学

2014-07-19洪英

教育界·上旬 2014年5期
关键词:程序设计语句程序

洪英

【摘 要】本文是对《算法与程序设计》选修的教学内容进行分析,提出高中《算法与程序设计》教学要注意培养学生的学习兴趣、讲练结合、难度适宜、并结合其他学科的问题应用程序解决,达到它为我用的目的。注意《算法与程序设计》要分阶段进行,不同阶段应选取不同的教学模式、教学方法,并对教学活动的组织形式做了较为详细的论述。文章根据现行教材“任务教学”的模式,提出了“任务教学”中涉及的一些具体问题。

【关键词】算法 VB程序设计 培养良好的学习兴趣 讲练结合 难度适宜 与其学科相结合 教学模式 教学方法

高中信息技术课已经开始向多元化发展,对高中生学习信息技术课不但要掌握基本知识,更要学习如何自己设计制作计算机作品,而其中又以设计程序为难点。现在计算机的多媒体的应用已经很普遍,而且学生对多媒体也容易感兴趣。相对多媒体而言,程序设计就显得枯燥无味。但是程序设计又是计算机的基础,只有程序设计掌握好了,才能更好地开发多媒体。并且对于高中生来说,高中许多课程都与计算机有关联,例如高中数学必修3中的第一章就是《算法初步》,其中有一些问题涉及程序设计的编程思路,对学生的逻辑思维能力提出了较高的要求。高中数学还要求学生能够把一些具体问题转化为数学模型解决。这些思想方法也是程序设计中最重要的思想方法,本质上并没有太大的区别。不同处主要是“VB程序设计”还要求学生具备一定的计算机操作能力。

我们目前使用的教材浙教版,其中《算法与程序设计》是选修1。如何上好这门课,实现信息技术课程的教育目标,在短短的一学期的教学实践中,通过和其他老师的讨论学习,对高中信息技术教育《算法与程序设计》有了一些初步的想法、体会、构想。

一、 培养良好的学习兴趣

爱因斯坦说:“兴趣是最好的老师。”所以培养学生的学习兴趣是关键所在。我在VB教学中,首先考虑了学生爱玩的天性,在上第一节课时,我应用VB制作了“QQ登录界面”,以及模仿李咏的“猜价格”游戏,先让学生观看这个小软件,并体会该程序。这时学生就会对这个程序是怎么编写的产生浓厚兴趣。学生有了兴趣,学习就会变得轻松有趣了。这时我再引入算法,以及程序的概念等基础知识。在激发了学生的浓厚兴趣后,再引入课题,让学生带着兴趣上课,可以达到事半功倍的效果,并且对以后学习程序有了积极主动性。

在以后的教学中同样的要注重兴趣的培养,“万事开头难”,但是要保持住原有的兴趣同样也是比较困难的。所以我将一些数学题引入到课堂上,让学生分组讨论,设计算法,编写程序,然后将不同的算法作比较,测试其可行性,如果有错误,可以共同分析错误并修改,如果分组讨论的结果都可行,可以比较不同算法的复杂性,让学生之间多交流,从而可以相互取长补短、扩展学生的思维。例如求解100以内所有能被3整除的数的和,设计算法编写程序。

算法1设计得简单,抓住了被3整除数的特征,只用到了循环语句,直接将K(循环变量)的初值设置为3,下一个K=K+3,这样保证了每一个i都是能够被3整除的;而算法2相对设计得比较复杂,判断了100以内的每一个数是不是能够被3整除,如果能则S=S+K,否则判断下一个数。通过分析这两个不同的算法,可以看出,算法1不需要判断,并且只循环了33次;而算法2循环和判断语句都执行了100次。这样学生在自己设计程序时就可以尽量地展开思路,并且在设计算法上更加严谨,相互讨论自己的算法,可以取长补短,共同进步。

二、讲练结合,难度适宜

在教学过程中配合适当的练习,让学生自己动手做。同样的给学生一些简单的有趣的问题,例如“鸡兔同笼”,共同讨论分析问题、设计算法、编写程序、上机调试等。学生刚开始接触VB程序的时候,学生对于VB程序设计思路模糊,不够清晰,出现的问题相对也较多。这个阶段老师要适当应用简单的示例,例如求解半径为r的圆的面积等问题的求解,可以提示学生设计算法或给部分程序让学生补充完整,并且学生可以扩展求解圆锥体体积、表面积等一些复杂的运算,但都是运用顺序结构解决的问题。

在基础掌握牢靠的基础上再上升一个台阶。先给出比较简单的问题,让学生自己设计算法和编写程序。例如输入三条边长,判断能否构成一个三角形等,有一个判断语句或一个循环语句就可以解决的问题。在以后的教学中难度逐步加大,适当地加入简单的嵌套结构,让学生能够应用计算机解决相对较复杂的问题,例如求解一元二次方程ax2+bx+c=0的根,要先判断a≠0,且b2-4ac≥,如果两个条件都满足则判断b2-4ac=0,如果是则有两相等的实数根,否则是不相等的两个实根;这道题就用到了双层嵌套判断语句,难点在于第二层判断语句是在第一个条件满足的情况下才判断的,不满足就直接得出无实根。在双层嵌套语句使用熟练的基础上,再加大力度,学习使用多层嵌套,以及判断和循环的嵌套等。每一次难度加大都要建立在学生对前面知识掌握牢固的基础上,即给学生提出问题,学生能较快地设计算法并编写出程序,在这个程度上再提高。学生掌握了基础算法设计和编写程序的基本要点后,可以灵活地设计一些问题,让学生多练习、多讨论,从而使学生真正掌握算法设计的精髓。

三、与其他学科相结合

可以说,每一个任务的完成都是信息技术的一次很好的应用,都体现着信息技术教学目标的实现。对课本提出的任务,我们必须有明确的认识,这些任务比较宽泛,但任务不是死的,必须结合具体的问题进行探索,随着教学的深入,引导学生提出与学习过程或实际生活相关的问题,通过解决问题,完成任务。从这个意义上说,“程序设计”的目的绝不仅仅是学会编程,更重要的是通过“程序设计”的学习,培养起高中生必备的信息技术素养。学生对于信息技术这门课不会花费大量的时间,他们的学习重点还是高考科目,但是信息技术学科与其他各学科都有联系,将其他学科的问题应用“VB程序设计”解决,例如数学中的数列计算第n项、前n项求和、复杂代数式的计算等问题,都可以设计算法,应用VB设计相应的程序,解决学习中的实际问题,这样学生可以将自己在数学课或物理课中的问题带到信息技术课上自己设计程序,真正地体验计算机解决问题的特点和优点,达到它为我用的目的。

这个程序设计的关键点是循环语句中循环体的设计,其中an=a1+a2,并及时将a2的赋值给a1,an的值赋给a2,在计算下一个an时保证a1和a2始终是它的前两项。在解这道数学题的基础上,学生可以推广应用到其他数列的计算,修改程序中的一些关键语句就可以达到目的。使学生真正进入到编程的乐趣中。

在信息技术课程中,要从信息技术课程自身建设的目的出发,围绕信息技术课程知识体系展开,使用学生所熟悉的其他学科的应用实例来说明。相当于数学课中的应用题,可以是生活的,也可以是物理或者化学的。就是说要它为我用,不能因其他学科的内容而冲淡了自己课程的主题。这样做的话,不仅我们学科的教学目的没有得到很好的实现,其他学科的老师也是不欢迎的。

《算法与程序设计》这门选修课是培养中学生如何应用计算机设计程序解决问题的,是一本有着创新设计的新教材,符合学生的认知过程,教师要深挖教材,要更好地利用教材,引导启发学生的学习兴趣,感悟算法设计的奇妙,激励学生奋发向上,在求索和创新上大放异彩。endprint

【摘 要】本文是对《算法与程序设计》选修的教学内容进行分析,提出高中《算法与程序设计》教学要注意培养学生的学习兴趣、讲练结合、难度适宜、并结合其他学科的问题应用程序解决,达到它为我用的目的。注意《算法与程序设计》要分阶段进行,不同阶段应选取不同的教学模式、教学方法,并对教学活动的组织形式做了较为详细的论述。文章根据现行教材“任务教学”的模式,提出了“任务教学”中涉及的一些具体问题。

【关键词】算法 VB程序设计 培养良好的学习兴趣 讲练结合 难度适宜 与其学科相结合 教学模式 教学方法

高中信息技术课已经开始向多元化发展,对高中生学习信息技术课不但要掌握基本知识,更要学习如何自己设计制作计算机作品,而其中又以设计程序为难点。现在计算机的多媒体的应用已经很普遍,而且学生对多媒体也容易感兴趣。相对多媒体而言,程序设计就显得枯燥无味。但是程序设计又是计算机的基础,只有程序设计掌握好了,才能更好地开发多媒体。并且对于高中生来说,高中许多课程都与计算机有关联,例如高中数学必修3中的第一章就是《算法初步》,其中有一些问题涉及程序设计的编程思路,对学生的逻辑思维能力提出了较高的要求。高中数学还要求学生能够把一些具体问题转化为数学模型解决。这些思想方法也是程序设计中最重要的思想方法,本质上并没有太大的区别。不同处主要是“VB程序设计”还要求学生具备一定的计算机操作能力。

我们目前使用的教材浙教版,其中《算法与程序设计》是选修1。如何上好这门课,实现信息技术课程的教育目标,在短短的一学期的教学实践中,通过和其他老师的讨论学习,对高中信息技术教育《算法与程序设计》有了一些初步的想法、体会、构想。

一、 培养良好的学习兴趣

爱因斯坦说:“兴趣是最好的老师。”所以培养学生的学习兴趣是关键所在。我在VB教学中,首先考虑了学生爱玩的天性,在上第一节课时,我应用VB制作了“QQ登录界面”,以及模仿李咏的“猜价格”游戏,先让学生观看这个小软件,并体会该程序。这时学生就会对这个程序是怎么编写的产生浓厚兴趣。学生有了兴趣,学习就会变得轻松有趣了。这时我再引入算法,以及程序的概念等基础知识。在激发了学生的浓厚兴趣后,再引入课题,让学生带着兴趣上课,可以达到事半功倍的效果,并且对以后学习程序有了积极主动性。

在以后的教学中同样的要注重兴趣的培养,“万事开头难”,但是要保持住原有的兴趣同样也是比较困难的。所以我将一些数学题引入到课堂上,让学生分组讨论,设计算法,编写程序,然后将不同的算法作比较,测试其可行性,如果有错误,可以共同分析错误并修改,如果分组讨论的结果都可行,可以比较不同算法的复杂性,让学生之间多交流,从而可以相互取长补短、扩展学生的思维。例如求解100以内所有能被3整除的数的和,设计算法编写程序。

算法1设计得简单,抓住了被3整除数的特征,只用到了循环语句,直接将K(循环变量)的初值设置为3,下一个K=K+3,这样保证了每一个i都是能够被3整除的;而算法2相对设计得比较复杂,判断了100以内的每一个数是不是能够被3整除,如果能则S=S+K,否则判断下一个数。通过分析这两个不同的算法,可以看出,算法1不需要判断,并且只循环了33次;而算法2循环和判断语句都执行了100次。这样学生在自己设计程序时就可以尽量地展开思路,并且在设计算法上更加严谨,相互讨论自己的算法,可以取长补短,共同进步。

二、讲练结合,难度适宜

在教学过程中配合适当的练习,让学生自己动手做。同样的给学生一些简单的有趣的问题,例如“鸡兔同笼”,共同讨论分析问题、设计算法、编写程序、上机调试等。学生刚开始接触VB程序的时候,学生对于VB程序设计思路模糊,不够清晰,出现的问题相对也较多。这个阶段老师要适当应用简单的示例,例如求解半径为r的圆的面积等问题的求解,可以提示学生设计算法或给部分程序让学生补充完整,并且学生可以扩展求解圆锥体体积、表面积等一些复杂的运算,但都是运用顺序结构解决的问题。

在基础掌握牢靠的基础上再上升一个台阶。先给出比较简单的问题,让学生自己设计算法和编写程序。例如输入三条边长,判断能否构成一个三角形等,有一个判断语句或一个循环语句就可以解决的问题。在以后的教学中难度逐步加大,适当地加入简单的嵌套结构,让学生能够应用计算机解决相对较复杂的问题,例如求解一元二次方程ax2+bx+c=0的根,要先判断a≠0,且b2-4ac≥,如果两个条件都满足则判断b2-4ac=0,如果是则有两相等的实数根,否则是不相等的两个实根;这道题就用到了双层嵌套判断语句,难点在于第二层判断语句是在第一个条件满足的情况下才判断的,不满足就直接得出无实根。在双层嵌套语句使用熟练的基础上,再加大力度,学习使用多层嵌套,以及判断和循环的嵌套等。每一次难度加大都要建立在学生对前面知识掌握牢固的基础上,即给学生提出问题,学生能较快地设计算法并编写出程序,在这个程度上再提高。学生掌握了基础算法设计和编写程序的基本要点后,可以灵活地设计一些问题,让学生多练习、多讨论,从而使学生真正掌握算法设计的精髓。

三、与其他学科相结合

可以说,每一个任务的完成都是信息技术的一次很好的应用,都体现着信息技术教学目标的实现。对课本提出的任务,我们必须有明确的认识,这些任务比较宽泛,但任务不是死的,必须结合具体的问题进行探索,随着教学的深入,引导学生提出与学习过程或实际生活相关的问题,通过解决问题,完成任务。从这个意义上说,“程序设计”的目的绝不仅仅是学会编程,更重要的是通过“程序设计”的学习,培养起高中生必备的信息技术素养。学生对于信息技术这门课不会花费大量的时间,他们的学习重点还是高考科目,但是信息技术学科与其他各学科都有联系,将其他学科的问题应用“VB程序设计”解决,例如数学中的数列计算第n项、前n项求和、复杂代数式的计算等问题,都可以设计算法,应用VB设计相应的程序,解决学习中的实际问题,这样学生可以将自己在数学课或物理课中的问题带到信息技术课上自己设计程序,真正地体验计算机解决问题的特点和优点,达到它为我用的目的。

这个程序设计的关键点是循环语句中循环体的设计,其中an=a1+a2,并及时将a2的赋值给a1,an的值赋给a2,在计算下一个an时保证a1和a2始终是它的前两项。在解这道数学题的基础上,学生可以推广应用到其他数列的计算,修改程序中的一些关键语句就可以达到目的。使学生真正进入到编程的乐趣中。

在信息技术课程中,要从信息技术课程自身建设的目的出发,围绕信息技术课程知识体系展开,使用学生所熟悉的其他学科的应用实例来说明。相当于数学课中的应用题,可以是生活的,也可以是物理或者化学的。就是说要它为我用,不能因其他学科的内容而冲淡了自己课程的主题。这样做的话,不仅我们学科的教学目的没有得到很好的实现,其他学科的老师也是不欢迎的。

《算法与程序设计》这门选修课是培养中学生如何应用计算机设计程序解决问题的,是一本有着创新设计的新教材,符合学生的认知过程,教师要深挖教材,要更好地利用教材,引导启发学生的学习兴趣,感悟算法设计的奇妙,激励学生奋发向上,在求索和创新上大放异彩。endprint

【摘 要】本文是对《算法与程序设计》选修的教学内容进行分析,提出高中《算法与程序设计》教学要注意培养学生的学习兴趣、讲练结合、难度适宜、并结合其他学科的问题应用程序解决,达到它为我用的目的。注意《算法与程序设计》要分阶段进行,不同阶段应选取不同的教学模式、教学方法,并对教学活动的组织形式做了较为详细的论述。文章根据现行教材“任务教学”的模式,提出了“任务教学”中涉及的一些具体问题。

【关键词】算法 VB程序设计 培养良好的学习兴趣 讲练结合 难度适宜 与其学科相结合 教学模式 教学方法

高中信息技术课已经开始向多元化发展,对高中生学习信息技术课不但要掌握基本知识,更要学习如何自己设计制作计算机作品,而其中又以设计程序为难点。现在计算机的多媒体的应用已经很普遍,而且学生对多媒体也容易感兴趣。相对多媒体而言,程序设计就显得枯燥无味。但是程序设计又是计算机的基础,只有程序设计掌握好了,才能更好地开发多媒体。并且对于高中生来说,高中许多课程都与计算机有关联,例如高中数学必修3中的第一章就是《算法初步》,其中有一些问题涉及程序设计的编程思路,对学生的逻辑思维能力提出了较高的要求。高中数学还要求学生能够把一些具体问题转化为数学模型解决。这些思想方法也是程序设计中最重要的思想方法,本质上并没有太大的区别。不同处主要是“VB程序设计”还要求学生具备一定的计算机操作能力。

我们目前使用的教材浙教版,其中《算法与程序设计》是选修1。如何上好这门课,实现信息技术课程的教育目标,在短短的一学期的教学实践中,通过和其他老师的讨论学习,对高中信息技术教育《算法与程序设计》有了一些初步的想法、体会、构想。

一、 培养良好的学习兴趣

爱因斯坦说:“兴趣是最好的老师。”所以培养学生的学习兴趣是关键所在。我在VB教学中,首先考虑了学生爱玩的天性,在上第一节课时,我应用VB制作了“QQ登录界面”,以及模仿李咏的“猜价格”游戏,先让学生观看这个小软件,并体会该程序。这时学生就会对这个程序是怎么编写的产生浓厚兴趣。学生有了兴趣,学习就会变得轻松有趣了。这时我再引入算法,以及程序的概念等基础知识。在激发了学生的浓厚兴趣后,再引入课题,让学生带着兴趣上课,可以达到事半功倍的效果,并且对以后学习程序有了积极主动性。

在以后的教学中同样的要注重兴趣的培养,“万事开头难”,但是要保持住原有的兴趣同样也是比较困难的。所以我将一些数学题引入到课堂上,让学生分组讨论,设计算法,编写程序,然后将不同的算法作比较,测试其可行性,如果有错误,可以共同分析错误并修改,如果分组讨论的结果都可行,可以比较不同算法的复杂性,让学生之间多交流,从而可以相互取长补短、扩展学生的思维。例如求解100以内所有能被3整除的数的和,设计算法编写程序。

算法1设计得简单,抓住了被3整除数的特征,只用到了循环语句,直接将K(循环变量)的初值设置为3,下一个K=K+3,这样保证了每一个i都是能够被3整除的;而算法2相对设计得比较复杂,判断了100以内的每一个数是不是能够被3整除,如果能则S=S+K,否则判断下一个数。通过分析这两个不同的算法,可以看出,算法1不需要判断,并且只循环了33次;而算法2循环和判断语句都执行了100次。这样学生在自己设计程序时就可以尽量地展开思路,并且在设计算法上更加严谨,相互讨论自己的算法,可以取长补短,共同进步。

二、讲练结合,难度适宜

在教学过程中配合适当的练习,让学生自己动手做。同样的给学生一些简单的有趣的问题,例如“鸡兔同笼”,共同讨论分析问题、设计算法、编写程序、上机调试等。学生刚开始接触VB程序的时候,学生对于VB程序设计思路模糊,不够清晰,出现的问题相对也较多。这个阶段老师要适当应用简单的示例,例如求解半径为r的圆的面积等问题的求解,可以提示学生设计算法或给部分程序让学生补充完整,并且学生可以扩展求解圆锥体体积、表面积等一些复杂的运算,但都是运用顺序结构解决的问题。

在基础掌握牢靠的基础上再上升一个台阶。先给出比较简单的问题,让学生自己设计算法和编写程序。例如输入三条边长,判断能否构成一个三角形等,有一个判断语句或一个循环语句就可以解决的问题。在以后的教学中难度逐步加大,适当地加入简单的嵌套结构,让学生能够应用计算机解决相对较复杂的问题,例如求解一元二次方程ax2+bx+c=0的根,要先判断a≠0,且b2-4ac≥,如果两个条件都满足则判断b2-4ac=0,如果是则有两相等的实数根,否则是不相等的两个实根;这道题就用到了双层嵌套判断语句,难点在于第二层判断语句是在第一个条件满足的情况下才判断的,不满足就直接得出无实根。在双层嵌套语句使用熟练的基础上,再加大力度,学习使用多层嵌套,以及判断和循环的嵌套等。每一次难度加大都要建立在学生对前面知识掌握牢固的基础上,即给学生提出问题,学生能较快地设计算法并编写出程序,在这个程度上再提高。学生掌握了基础算法设计和编写程序的基本要点后,可以灵活地设计一些问题,让学生多练习、多讨论,从而使学生真正掌握算法设计的精髓。

三、与其他学科相结合

可以说,每一个任务的完成都是信息技术的一次很好的应用,都体现着信息技术教学目标的实现。对课本提出的任务,我们必须有明确的认识,这些任务比较宽泛,但任务不是死的,必须结合具体的问题进行探索,随着教学的深入,引导学生提出与学习过程或实际生活相关的问题,通过解决问题,完成任务。从这个意义上说,“程序设计”的目的绝不仅仅是学会编程,更重要的是通过“程序设计”的学习,培养起高中生必备的信息技术素养。学生对于信息技术这门课不会花费大量的时间,他们的学习重点还是高考科目,但是信息技术学科与其他各学科都有联系,将其他学科的问题应用“VB程序设计”解决,例如数学中的数列计算第n项、前n项求和、复杂代数式的计算等问题,都可以设计算法,应用VB设计相应的程序,解决学习中的实际问题,这样学生可以将自己在数学课或物理课中的问题带到信息技术课上自己设计程序,真正地体验计算机解决问题的特点和优点,达到它为我用的目的。

这个程序设计的关键点是循环语句中循环体的设计,其中an=a1+a2,并及时将a2的赋值给a1,an的值赋给a2,在计算下一个an时保证a1和a2始终是它的前两项。在解这道数学题的基础上,学生可以推广应用到其他数列的计算,修改程序中的一些关键语句就可以达到目的。使学生真正进入到编程的乐趣中。

在信息技术课程中,要从信息技术课程自身建设的目的出发,围绕信息技术课程知识体系展开,使用学生所熟悉的其他学科的应用实例来说明。相当于数学课中的应用题,可以是生活的,也可以是物理或者化学的。就是说要它为我用,不能因其他学科的内容而冲淡了自己课程的主题。这样做的话,不仅我们学科的教学目的没有得到很好的实现,其他学科的老师也是不欢迎的。

《算法与程序设计》这门选修课是培养中学生如何应用计算机设计程序解决问题的,是一本有着创新设计的新教材,符合学生的认知过程,教师要深挖教材,要更好地利用教材,引导启发学生的学习兴趣,感悟算法设计的奇妙,激励学生奋发向上,在求索和创新上大放异彩。endprint

猜你喜欢

程序设计语句程序
基于OBE的Java程序设计个性化教学研究
项目化教学在Python程序设计课程中的应用
C++程序设计课程教学改革研究
医学专业“Python程序设计”课程教学改革总结与思考
给Windows添加程序快速切换栏
简化化学平衡移动教学程序探索
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
基本算法语句
我喜欢