提倡算法的多样性。程序设计课程的价值之一在于训练、提高学生的计算思维能力,如果学生都按照教师的逻辑思维习惯进行分析问题、解决问题,这不能不说是一种失败。所以,在让学生学习教师分析问题、解决问题的同时,要倡导算法的多样性,培
养、激励学生的创新意识、探索精神和问题求解能力。例如,有些同学数学基础很好,有一些问题,他们总会用数学的方式先进行初步解决,再结合计算机进行编程。对于这些同学,一定要进行及时的鼓励,并介绍他们的做法,使之感到编程的成就感。
注重算法的简化和优化'我们不能只提倡算法多样化,还要引导学生对算法进行研究,逐步达到简化并优化算法的目标。例如我们常用的“百鸡百钱”问题,很多学生按照公鸡、母鸡、小鸡的顺序用三重循环进行实现。我们就提出“是否可以用二重循环实现呢”,学生仔细一想,确实可以改成二重循环进行实现。再比较两次的实现方法,发现循环次数由100*100*100=1000000降到了100*100=10
000,降幅达到了99%。一个简单的改进,让学生看到了算法改进的魅力。这也让部分同学想到“这个问题是否可以进一步简化呢”,再进行分析,发现公鸡的数量不可能大于32,从而可以将算法中公鸡数量上限从100改到32,母鸡数量上限也改成98,循环次数降到了32*98=3136,比二重循环又减少了近70%。这一系列的简化,充分调动了学生的学习兴趣。
4结语
在计算机程序设计课程的讲授中,通过采用项目贯穿、循序渐进及多角度的思维训练方法,学生分析问题和解决问题的能力得到了明显提高,也有部分同学因无法保证前后知识的连贯性,造成后期难以跟上正常教学进度,出现掉队现象。如何将计算机程序设计课程中的分散语法结构相互关联起来,利用好的案例提高学生学习积极性,培养、提高学生的计算思维能力,仍是值得探索的问题。
参考文献:
[1]中国高等院校计算机基础教育改革课题研究组.中国高等院校计算机基础教育课程体系2008[M].北京:清华大学出版社,2008.
[2]陈国良.计算思维与大学计算机基础教育[R].济南:第六届大学计算机课程报告论坛,2010.
[3]J.M.Wing.ComputationalThinking[J].CommunicationsoftheACM,2006(49):33-35.
[4]董荣胜,古天龙?计算思维与计算机方法论[J]?计算机科学,2009⑴:1-4.
[5]李国杰 信息科学技术的长期发展趋势和我国的战略取向[J]中国科学,2010(40):128-138.
[6]陈杰华 程序设计课程中强化计算思维训练的实践探索[J].计算机教育,2009(20):84-85.