荊春萍
(平度市高級技工學(xué)校,山東平度 266700)
發(fā)散思維與收斂思維在《C程序設(shè)計》中的應(yīng)用
荊春萍
(平度市高級技工學(xué)校,山東平度 266700)
在《C程序設(shè)計》課堂教學(xué)中,將發(fā)散思維和收斂思維進(jìn)行有機(jī)地結(jié)合,能夠充分地調(diào)動學(xué)生學(xué)習(xí)積極性,激發(fā)了學(xué)生學(xué)習(xí)該課程的興趣,提高了學(xué)生的學(xué)習(xí)探究能力,有效地進(jìn)生了課堂教學(xué)創(chuàng)新?!禖程序設(shè)計》是普通高職、高等院校計算機(jī)專業(yè)學(xué)生的必修課。而在中職教學(xué)中,開設(shè)《C程序設(shè)計》課程的目的是使學(xué)生掌握程序設(shè)計的基本概念及基本方法,并能較熟練地進(jìn)行程序設(shè)計。
發(fā)散思維 收斂思維 C程序設(shè)計
在中職的實(shí)際教學(xué)中,如何培養(yǎng)、激發(fā)、提高學(xué)生的編程興趣至關(guān)重要,該文探討了在《C程序設(shè)計》教學(xué)過程中的發(fā)散思維和收斂思維,并將其應(yīng)用到實(shí)際的教學(xué)中。
概念。又稱輻射思維、放射思維、擴(kuò)散思維或求異思維,是指大腦在思維時呈現(xiàn)的一種擴(kuò)散狀態(tài)的思維模式,它表現(xiàn)為思維視野廣闊,思維呈現(xiàn)出多維發(fā)散狀。發(fā)散思維是一種求異思維,為在廣泛的范圍內(nèi)搜索,要盡可能地放開,把各種不同的可能性都設(shè)想到。
例如:輸入一個大于3的整數(shù)m,判斷它是否是“素數(shù)”(又稱“質(zhì)數(shù)”)
分析1:何為“素數(shù)”,即是數(shù)學(xué)中的“質(zhì)數(shù)”,只能被1和它本身整除的數(shù)(而2—m-1范圍內(nèi)沒有能被整除的數(shù))。例如判斷17是否是素數(shù),要將17被2至16分別來整除,循環(huán)體被重復(fù)執(zhí)行了15次。教材中的例題程序清單如下:我們稱之為“程序一”
程序一
分析2:程序改進(jìn)其實(shí)m不必被2—m-1范圍內(nèi)的各整數(shù)去除,只須將2—m/2間的整數(shù)除即可,甚至只須被2—之間的整數(shù)除即可。例如判斷17是否是素數(shù),只須將17被2、3、4除即可,如都不能被整除,m即為素數(shù)。這樣做可以大大減少循環(huán)的次數(shù),提高了程序的運(yùn)行效率。程序清單如下:我們稱之為“程序二”
程序二
實(shí)踐證明,判斷變量i與k之間的大小關(guān)系m不是素數(shù)時容易明白,是素數(shù)時學(xué)生在理解起來有一定的難度。下面再引入程序清單通過flag標(biāo)志來判斷m是否是“素數(shù)”,假定要判斷的數(shù)是素數(shù),設(shè)flag標(biāo)志是1在通過循環(huán)判斷只要m不是素數(shù),馬上修改標(biāo)志flag是0,循環(huán)強(qiáng)行中止,最后在輸出時根據(jù)flag的值來判斷m是否是素數(shù)。原理也是依據(jù)定義及程序二的改進(jìn),我們分別稱之這“程序三”和“程序四”
程序三:
概念。又稱“聚合思維”、“求同思維”、“輻集思維”或“集中思維”。收斂思維是一種求同思維,要集中各種想法的精華,達(dá)到對問題的系統(tǒng)全面的考察,為尋求一種最有實(shí)際應(yīng)用價值的結(jié)果而把多種想法理順、篩選、綜合、統(tǒng)一。
收斂思維也是為了解決某一問題,在眾多的現(xiàn)象、線索、信息中,向著問題一個方向思考,根據(jù)已有的經(jīng)驗(yàn)、知識或發(fā)散思維中針對問題的最好辦法去得出最好的結(jié)論和最好的解決辦法。而發(fā)散思維是為了解決某個問題,從這一問題出發(fā),想的辦法、途徑越多越好,總是追求還有沒有更多的辦法。
實(shí)踐證明四個程序都能判斷m是否是“素數(shù)”。學(xué)生通過分組探究,得出如下的結(jié)論。從學(xué)生易接受的角度來看,程序三、四要優(yōu)于程序一、二;從程序運(yùn)行的效率角度來看,程序四、二要高于程序三、一;從學(xué)生接受的角度和運(yùn)行效率來看,程序四最佳選擇。
發(fā)散思維與收斂思維在《C程序設(shè)計》中的還有許多應(yīng)用實(shí)例,例如,分別用while、do—while、for來編程求1+2+3+……+100的和,對數(shù)據(jù)的排序分別用選擇法、冒泡法、插入法排序,數(shù)據(jù)的查找分別有順序查找和二分查找,分別用函數(shù)調(diào)用(簡單變量和指針作函數(shù)參數(shù))返回兩個數(shù)中較大者等等,在此不再一一列舉。
發(fā)散思維是由問題的中心指向四面八方,收斂思維是由四面八方指向問題的中心。發(fā)散思維是一種求異思維,為在廣泛的范圍內(nèi)搜索,要盡可能地放開,把各種不同的可能性都設(shè)想到。收斂思維是一種求同思維,要集中各種想法的精華,達(dá)到對問題的系統(tǒng)全面的考察,為尋求一種最有實(shí)際應(yīng)用價值的結(jié)果而把多種想法理順、篩選、綜合、統(tǒng)一。
發(fā)散思維與收斂思維是一種辨證關(guān)系,既有區(qū)別,又有聯(lián)系,既對立又統(tǒng)一。沒有發(fā)散思維的廣泛收集,多方搜索,收斂思維就沒有了加工對象,就無從進(jìn)行;反過來,沒有收斂思維的認(rèn)真整理,精心加工,發(fā)散思維的結(jié)果再多,也不能形成有意義的創(chuàng)新結(jié)果,也就成了廢料。只有兩者協(xié)同動作,交替運(yùn)用,一個創(chuàng)新過程才能圓滿完成。
[1]譚浩強(qiáng)著.《C程序設(shè)計》(第四版).