如何培养创新性思维_程序设计中培养学生的创新性思维

程序设计中培养学生的创新性思维

程序设计中培养学生的创新性思维 一、在比较中寻找差异的目标,培养思维的变通性 通过比较,实现思维的迁移,是培养创新性思维的有效方法之一。我们会 发现,程序设计中这种新旧问题之间的差异是各种各样、异彩纷呈的,这就要求 教师在教学过程中能积极引导、帮助学生养成通过比较去寻找差异的思维习惯, 以逐步提高学生自主思维的变通能力。例如,输入A,B两个数,交换值后输出。

此时大多数同学总是会这样来编写(以A=2,B=3为例):A=B,B=A运行结果:
A=3,B=3。当同学们百思不得其解的时候,笔者引导大家借助第三个变量来实 现交换。趁机提醒学生思考:如果不通过第三变量,用数学知识应如何解决?最 后,学生研究讨论后得出利用两数四则运算解决的方法。此题笔者着眼于数学知 识与程序设计思路的迁移,虽然只是简单的思维变通,但在此过程中,学生获得 了从寻求差异到开拓新思路的快乐,也尝试了变通思维的一种方法,实现了由固 有知识到对新知识的建构。这种变通性的思维新方法将在他们日后的程序设计中, 乃至解决某些问题时起到非常大的作用。

二、分解或改编目标,培养思维的流畅性 爱因斯坦说“:提出问题不一定局限于借助对诸多因素的分析之后,提出 一个隐含着的关键问题,也可以在问题已经明确,但由于一时难以着手解决,而 从原有问题的框架中超脱出来,以连贯性的思维和迂回方式逐步加以分析,找出 要达到最终目标之关键要素,逐一加以攻克,从而找到问题解决的最终方案。也 就是说,将大目标加以分解,转换到比较明确的小问题上,找到解决这些小问题 的具体方法,最后根据大目标的要求,将这些方法优化组合起来。这样由小及大 的思维方式,既可以激发新灵感,又有利于保持思维的连续性、流畅性。在程序 设计教学中,这种创新性思维方式是较为常用又至关重要的。例如,对已有的10 个整数进行从小到大排序。从问题本身来说,目标已经一目了然。但如何入手呢? 具体要解决些什么问题呢?在教学时,我启示学生将此问题改写成自己认为与题 目类似,并且简单到运用已有知识自己能解决的问题。有学生将问题变成:10 个人排队,每趟找出个子最矮的同学,将此同学排在最前面,然后再对剩下来的 人用同样的方法,最后完成任务。此种方法比较直观形象,而且贴近学生的生活。

也有学生将问题改写成:用10张扑克牌来模拟排序,方法类似于排队,此种方法 的实现比较简单。更让笔者感到惊喜的是有组同学利用数组的下标完成了排序:
将数组定义成下标从最小值到最大值变化范围,由于VB中变量数值型变量定义后初始值都为零,所以,读入数组值的时候,如果元素值和下标相同,则将该元 素值加1,最后输出的时候,以下标作为循环控制变量,输出值不为零的下标值。

代码如下:¥上述代码中丝毫没有任何的比较语句,并且巧妙运用了循环语句实 现的条件。由此可见,并非是学生不肯动脑筋,他们的创意和智慧是无穷的。教 学过程中通过对原始问题的分解、改编处理,使学生掌握了由简到繁的思维方法, 让他们在掌握整个问题的算法时更有认同感,同时,使他们体会到了只要对一个 小问题有了新的解决办法,就有可能使整个问题的解决变得简单明了。课堂教学 中引导学生合理地分解问题,使不同层次的学生都体会到了用自己编制的程序解 决问题的成功感,有利于激发学生对程序设计的学习兴趣,同时使思维既发散又 集中,不至于产生断续和不连贯,体现了流畅性的创新特点。

三、鼓励大胆假设,培养思维的独特性 创新思维贵在思维的独特性,独特创新的思维更是可遇而不可求的。只有 保护独特性的思维意识和独特的思维方式,鼓励在思维中产生种种假设,才能实 现思维的突破和创新。要激发这种思维火花,教师就要充分利用假设情境,营造 有利于学生独立思维的氛围;
即使学生的思维有失误或偏颇,也应宽容而不随意 否定,因为对错误思维的修整也有可能产生与众不同的思维结果。例如,输入A、 B两个数,输出其中较大的值。(不允许用条件语句来实现)传统的解决方案用 if语句,现在问题的关键是不允许用条件语句。此时要激发学生新的思维,让他 们提出自己的假设并分小组展开讨论。有的组想到用绝对值的方式:
Printabs(A-B)/2+(A+B)/2有的组想到利用逻辑表达式强制转化为整数类型时true 为-1,false为0的方式来实现:print-a*(a=b)-b(ab)由于VB语法的不严谨性,还有 的组想到了这样的方法:printABandAorABandB,在请她解释原因时,她说是试 出来的。由此可见,不断假设可以触发各种新的思维模式,当假设成为一种思维 习惯时,会有更多新的思考方法涌现出来。当然,假设绝不是胡猜,它是建立在 对问题深入细致地分析基础之上有一定依据的设想。教师在分析问题时可以启发 学生不断假设,引导他们抓住关键,多角度提出假设。

总之,在教学实践活动中,可以灵活运用各种不同的创新思维方法,不存 在明显的界限,也不能把它们程式化地凝固起来。值得注意的是,教师的作用重 在引导学生积极开展思维活动,决不能将自己的创新性思维方式按传统的填鸭式 教学方式强加于学生,因为这必然会遏制学生的自主思维,也违背了培养创新性 思维的初衷。

本文作者:张小莉 李晟 工作单位:江苏省苏州中学园区校