我要在這篇文章中分享,我自己在程式設計方面是如何學習的

但不代表適合每個人,所以還是要找出適合自己的學習方式

但最重要的還是你對於程式設計的熱忱

 

  1. 大量的練習題目

也就是題庫的來源,Practice makes perfect(熟能生巧),練習是不會騙人的

所以還在打LOL的你快把遊戲關了,當個中離狗吧~

這裡分享幾個題庫網站,有空就可以去看看題目,多多的練習。

CPE大學程式能力檢定、ITSA程式桂冠挑戰大賽這些比賽的題庫、比賽時有些題目都會從這裡面出個幾題。

中文、英文題目都有,我自己目前也都是用這個網站在練習。

輸出的最後一定要打上換行

全英文的題庫網站,我自己也沒用過

翻譯、整理UVa題目的中文網站,如果覺得用UVa很吃力,可以參考這個

  1. 解題構思

既然題目都有了,那麼開始解題吧!

以下都用C/C++講解

  1. 變數宣告:變數的宣告一定要有意義,別人看不看得懂就算了,但自己要搞清楚這個變數名字代表甚麼

假設有題目:輸入一個整數,輸入多少,就輸出多少次"Hello World"

我剛開始寫程式時,要宣告輸入值時,我一定宣告

假設題目:輸入三個數,如果三個都是偶數,印出Y,否則,印出N

 

按照我以前寫的寫法

這麼一大堆沒意義的變數,就會造成混亂

所以現在要宣告變數時,我就會用一些英文單字來命名

例如:輸入一個整數

我就會

  1. 解題方向:當一看到題目,我會先想人腦是怎麼思考的,再開始寫

假設題目:http://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=7660 

問題描述:右圖是一個 7X7 的矩陣,其中有三個燈泡。燈泡能照到垂直與水平的所有空格,

然而燈光會被黑色方塊擋住。這個問題是要在給定的燈泡與黑色方塊配置下,找出沒有被燈光照到的白方格總數。

輸入說明:

在本問題中, input 是大小為 7X7 的問題原始配置,其中白方格以 0 表示,黑方格以 1 表示,燈泡以 2 表示,如下圖:

 

這題我的思考方向是,燈泡照亮是朝四個方向發射,然後遇到黑色格子就停止,

所以用迴圈尋找如果找到燈泡就再用四個迴圈,讓這四個迴圈判斷在四個方向上會照亮幾個格子,

把照到格子的數字改成2,最後統計有幾個2就是照亮的格數了。

 

  1. 遇到困難,怎麼辦?

        當寫程式到一半卡住時,怎麼辦?

我卡住的當下,如果只是寫好之後的程式出錯,改一下就OK的,我就會堅持到調整好。

如果是連打都不知道怎麼打的,我就會先跳過,解其他題,這樣有可能會在其他題目裡找到跳過題目的解法。

 

希望我的分享都可以幫助到喜歡寫程式的各位,謝謝閱讀。

 

若想閱讀相關文章請關注我的粉絲團

小資菜鳥向前衝

https://www.facebook.com/%E5%B0%8F%E8%B3%87%E8%8F%9C%E9%B3%A5%E5%90%91%E5%89%8D%E8%A1%9D-204484273323335/?fref=ts

arrow
arrow
    文章標籤
    個人經驗 程式設計
    全站熱搜

    cychss6305 發表在 痞客邦 留言(0) 人氣()