close

我發現每天的這個時段我都超無聊

而且剛剛寫程式寫到有感而發,所以就打了這篇

首先得先從他開始說起

IMG_0311  

它是一本只寫幾個主要觀念的程式書,它的觀念非常詳盡

每個單元後面也都有10個例題給讀者練習

而它的例題,與它在單元中提及的觀念,難度差了十萬八千里

就像前面再看花園寶寶,後面再寫名偵探柯南一樣

非常之困難,而且沒有一題是有附答案的

 

一開始,我對此感到相當火大

他媽der題目難的跟屎一樣,為何不給答案

我還甚至因此不爽超級久,長達好幾天=ˇ=

但當我真的下定決心慢慢思考例題時...我漸漸發現老師不給答案的原因,其原因有二

第一點:程式語言雖然非常嚴謹,哪裡的格式要空幾格也有明確規定,但,一個達成要求的程式,卻有千千萬萬種寫法,端看設計者如何創造。設計者可以寫得很簡潔有力、很有可讀性;也可以寫得很冗長繁瑣,讓別人完全看不懂。而我想老師不附答案的原因,就是要我們自行發揮創意,寫出一個可讀性高、又簡潔的程式,而這也就是程式「設計」的精髓之一。

第二點:從零到滿,從無到有。在真正實作這些習題之前,我只了解幾個程式片語,只懂得寫一些簡單的程式。但,當我真正坐在電腦前思考這些極為困難的問題時,一開始,解出一個大概的樣子要3個小時,寫出來之後還要試誤、校正、還要再想辦法把它變的簡明有力。我從一個幾乎不會程式的平民,漸漸成長,漸漸了解如何修改冗句、如何測試一個程式、何時要引進參數、何時要刪減參數、如何從零到寫出一個完整漂亮的程式。慢慢地,我了解到看到一個新題目該如何下手、該如何修剪、該如何加入屬於自己的風格、該如何設計出好多很有創意的句子。而這是我認為的第二個原因,也是我最喜歡的原因,就是要讓我們學會如何「自己成長」。

程式設計的有趣之處,就是它裡面夾雜了大量的邏輯,幾個很點單、很常見的邏輯拼湊再一起,就會誕生出意想不到的漂亮結果。這些,全是要自己思考、自己確實想過之後,才能真正學到的。而以我現在的程度去看程式設計,我可以很老實地說,它真的非常的困難,一個完美無缺的好程式,又是多麼地難以設計出、構思出。從一開始解一個難題要4個多小時,到現在,幾乎可以壓縮在2個小時以內,不是什麼靈機一動的結果,也不是背很多片語的功效;而是其中的每一個難題,我都沒有上網查資料、也沒有問高手,全部都是一點一滴,從main(){}開始寫、慢慢寫、慢慢修改、慢慢引進temp、慢慢用for去構思、去修正的成果。謝謝這本書,因為它的"不附答案",讓我第一次體會到卡題卡一整晚的滋味、讓我第一次體會到多方思考的重要性、讓我第一次能夠去體會"成長"這一事實。

我曾經想過,選資工這條路,我,會不會後悔。

而我現在,也還是拿不定主意,我到底該如何回答我自己。不過我可以很確定的一件事是,儘管在未來還可能遇到更多更困難的挑戰(因為程式真的超難QQ),但我絕對不會忘記此刻的感受:寫程式,是件很開心很開心的事喔!!

附上幾張成果圖XDDDD

卡車多重轉彎問題

作業5.5    

輸入值距1970/1/1幾天的問題

作業5.6  

質因數分解問題

作業5.9  

輸入值順序多重調換問題

作業5.10  

一給定平面中,雙球碰撞問題(只考慮相撞、撞牆、撞角落的完全彈碰,兩球軌跡規定與x軸夾45度)

作業5.7  

任一進位法,轉成指定進位法問題

作業5.8  

arrow
arrow
    全站熱搜

    勾勾 發表在 痞客邦 留言(2) 人氣()