程式設計和數學的關係是什麼程式設計與數學的關係

2021-03-05 09:18:16 字數 4601 閱讀 5620

1樓:sunny趴窩睡覺

數學是基礎學科,有豐富的數學基礎可以對理解程式設計中的邏輯有幫助。

程式設計對不同的人有不同的意義:

對於一般的程式設計師就是**的產出和可執行程式(數學在這裡面並不是特別重要,更重要的是對各種框架的理解、熟練掌握、設計模式等)。

對於演算法工程師來說,數學就很重要了(例如機器學習,密碼學,計算機圖形學等,當然這個對題主來說還太遙遠)。

題主說的函式實際上就是為了實現目的的一種封裝形式,而遞迴只是在函式中呼叫自身(當然需要終止條件)。

2樓:你猜我猜哇擦猜

你好,我是計算機專業大三的學生,我來說說在我的印象中數學的關係:

第一,編寫程式體現的是一個人的邏輯思維,既然涉及到邏輯,必然會與數學有些關係。但是與數學關係的深淺要與你所涉及的方面有關。

第二,程式設計中必須要學的數學:

1.最基本的數字與運算知識:二進位制的概念(在哈夫曼樹,哈弗曼編碼等方面有直接的應用),取餘的概念(在迴圈連結串列,隨機數方面有應用),基礎平面幾何(在繪製視窗,繪製曲線,自定義按鈕等圖形化的地方會用到),還有些很基礎的數學知識絕對不超出初中的範疇。

2.計算機中的數學知識:主要的一門叫做離散數學,講的是邏輯代數的相關知識,其實在真正的程式設計中不會直接體現這門課的重要性,對於初學者只要知道:

與或非是怎麼回事,什麼是集合就可以了。離散數學還涉及到一些圖與樹的概念,我現在先把這些劃歸到資料結構中。

3.我前面說了,程式設計與你的需求有直接的關係,有些程式設計領域與數學的知識密不可分:

1)搞底層:舉個例子,如果你想設計一套你自己的windows字型,那麼肯定涉及到字型平滑,字型平滑就涉及到一個很難的數學知識:插值。

這個知識在數值分析中講解,而且沒有高等數學的基礎,這門課想學會的可能性幾乎是零。。。這門課主要解決的是高等數學中的問題如何用計算機解決,比如:泰勒插值,拉格朗日插值,求解一般方程或微分方程的解,還有的我忘了,反正都是很難的知識。

而底層的很多程式設計都是以這些為基礎的。

2)搞圖形學:cg技術由於在遊戲中的如日中天,使得很多初高中生對圖形學神往已久,但卻不知計算機圖形學的知識是建立在很多大學數學課程的基礎上的。尤其是圖形學理論的學習,沒有線性代數的基礎是根本看不懂的。

而在三維檢視方面又要涉及到高等數學中極座標的知識。很多演算法,比如樑-baskey演算法對於平面幾何分析水平的要求是非常高的!如果你想搞遊戲設計,動畫電影(這個是要寫指令碼程式的,否則畫面哪能那麼好),我勸你還是到了大學再深入學習吧。

3)搞演算法:學習演算法與其說數學要好,還不如說成是智力要好。。。比如分治法,動態規劃演算法,回溯法等對於問題的前期分析要求很高,尤其是列出遞迴方程,這些我覺得是在考智力。

還有一些,比如圖演算法,樹的應用,排序,查詢,這些知識涉及到計算機專業的另一門課程:資料結構,這門課是計算機專業的核心課程之一,也是專業與非專業的最大區別。這門課對數學要求不高,但對於一個人的思維要求比較高。

還有像計算幾何的問題,那就是純數學問題了。。。

4)搞密碼學:我不搞這方面,而且也沒研究過,但聽說這方面對數學要求極高!由於我的數學比較好,別人還推薦過我去搞這方面,但是我一想到面對的都是數字,我就退縮了。。。

以上就是我所知道的與數學有關的計算機分支,每個方面都夠人學一輩子,而且學好了,前途與錢途都是大大的!

第三,這麼多方面都跟數學有關,那程式設計豈不沒法學了?還有些方面對於數學要求相對較低,我說的相對較低是由於不管哪方面都會涉及到一些基礎的數學演算法。總的來說,越往高層,對數學的要求越低,比如mfc,那些網路程式設計,系統程式設計都是封裝好的,但對於一個系統來說整體的規劃和設計更關鍵,就是說前期的需求分析、邏輯結構設計和物理結構設計比編碼更重要,當然工資也更高。。。

最後,我想給你提些學習程式設計的建議:

1)由於你的年齡還小,中國的教育體質問題,希望你不要把太多的精力放在這上面。。。我想***。雖然聽說過哪個孩子做了個遊戲之後成了百萬富翁,但這麼多年了,似乎只有他一個,不要懷疑自己的實力,但更不要幻想你有這個運氣。。。

2)程式設計注重邏輯思維,你才是初中生,大腦的發育不知是否成熟(絕不是說你智力低,你應該知道大腦發育是有階段的吧),所以要以語言的基礎為主,這個對數學要求不高。

3)請選一門語言去練習,程式設計注重實踐,沒有實踐只有理論那就等於沒學,所以一定多練練。至於語言,我推薦學習c或c++,至於c與c++是怎麼回事,怎麼學習,這是另一個比較難的話題。。。注意別上來就學vc++(mfc),否則你會一事無成!

4)程式設計很枯燥,所以要耐得住性子,不要一見到難題就退縮,一見到不會的概念就把書扔了,不會的時候請多看看基礎,八成是語言基礎不到位。

就寫這麼多吧,希望我的回答對你有幫助。你若有什麼問題還可以繼續問,若是程式設計過程中遇到什麼問題也可以問我,很歡迎的!

3樓:匿名使用者

我來告訴你,程式和數學的關係:數學是你解決問題的思想和靈魂(即我們說的思維模式),而程式只是血和肉,不管是類、方法還是過程函式,它只是你解決問題的一個過程,而我們的思維模式當中,涉及最多的肯定就是數學咯,當然還有其它的一些邏輯在裡面,比如語言邏輯,像英語、漢語的思維邏輯就不一樣對吧,語言(這裡也包含程式語言,英文,漢語等等)是你組織、溝通及表達思維模式(靈魂)的一種方式或過程。不知道這樣說你能更好地理解數學和程式的關係了麼!

4樓:百度使用者

數學是一切科學的基礎,沒有數學就不會有其他科學。

程式設計與數學的關係

5樓:計都羅睺公爵

你好,我是計算機專業大三的學生,我來說說在我的印象

中數學的關係:

第一,編寫程式體現的是一個人的邏輯思維,既然涉及到邏輯,必然會與數學有些關係。但是與數學關係的深淺要與你所涉及的方面有關。

第二,程式設計中必須要學的數學:

1.最基本的數字與運算知識:二進位制的概念(在哈夫曼樹,哈弗曼編碼等方面有直接的應用),取餘的概念(在迴圈連結串列,隨機數方面有應用),基礎平面幾何(在繪製視窗,繪製曲線,自定義按鈕等圖形化的地方會用到),還有些很基礎的數學知識絕對不超出初中的範疇。

2.計算機中的數學知識:主要的一門叫做離散數學,講的是邏輯代數的相關知識,其實在真正的程式設計中不會直接體現這門課的重要性,對於初學者只要知道:

與或非是怎麼回事,什麼是集合就可以了。離散數學還涉及到一些圖與樹的概念,我現在先把這些劃歸到資料結構中。

3.我前面說了,程式設計與你的需求有直接的關係,有些程式設計領域與數學的知識密不可分:

1)搞底層:舉個例子,如果你想設計一套你自己的windows字型,那麼肯定涉及到字型平滑,字型平滑就涉及到一個很難的數學知識:插值。

這個知識在數值分析中講解,而且沒有高等數學的基礎,這門課想學會的可能性幾乎是零。。。這門課主要解決的是高等數學中的問題如何用計算機解決,比如:泰勒插值,拉格朗日插值,求解一般方程或微分方程的解,還有的我忘了,反正都是很難的知識。

而底層的很多程式設計都是以這些為基礎的。

2)搞圖形學:cg技術由於在遊戲中的如日中天,使得很多初高中生對圖形學神往已久,但卻不知計算機圖形學的知識是建立在很多大學數學課程的基礎上的。尤其是圖形學理論的學習,沒有線性代數的基礎是根本看不懂的。

而在三維檢視方面又要涉及到高等數學中極座標的知識。很多演算法,比如樑-baskey演算法對於平面幾何分析水平的要求是非常高的!如果你想搞遊戲設計,動畫電影(這個是要寫指令碼程式的,否則畫面哪能那麼好),我勸你還是到了大學再深入學習吧。

3)搞演算法:學習演算法與其說數學要好,還不如說成是智力要好。。。比如分治法,動態規劃演算法,回溯法等對於問題的前期分析要求很高,尤其是列出遞迴方程,這些我覺得是在考智力。

還有一些,比如圖演算法,樹的應用,排序,查詢,這些知識涉及到計算機專業的另一門課程:資料結構,這門課是計算機專業的核心課程之一,也是專業與非專業的最大區別。這門課對數學要求不高,但對於一個人的思維要求比較高。

還有像計算幾何的問題,那就是純數學問題了。。。

4)搞密碼學:我不搞這方面,而且也沒研究過,但聽說這方面對數學要求極高!由於我的數學比較好,別人還推薦過我去搞這方面,但是我一想到面對的都是數字,我就退縮了。。。

以上就是我所知道的與數學有關的計算機分支,每個方面都夠人學一輩子,而且學好了,前途與錢途都是大大的!

第三,這麼多方面都跟數學有關,那程式設計豈不沒法學了?還有些方面對於數學要求相對較低,我說的相對較低是由於不管哪方面都會涉及到一些基礎的數學演算法。總的來說,越往高層,對數學的要求越低,比如mfc,那些網路程式設計,系統程式設計都是封裝好的,但對於一個系統來說整體的規劃和設計更關鍵,就是說前期的需求分析、邏輯結構設計和物理結構設計比編碼更重要,當然工資也更高。。。

最後,我想給你提些學習程式設計的建議:

1)由於你的年齡還小,中國的教育體質問題,希望你不要把太多的精力放在這上面。。。我想***。雖然聽說過哪個孩子做了個遊戲之後成了百萬富翁,但這麼多年了,似乎只有他一個,不要懷疑自己的實力,但更不要幻想你有這個運氣。。。

2)程式設計注重邏輯思維,你才是初中生,大腦的發育不知是否成熟(絕不是說你智力低,你應該知道大腦發育是有階段的吧),所以要以語言的基礎為主,這個對數學要求不高。

3)請選一門語言去練習,程式設計注重實踐,沒有實踐只有理論那就等於沒學,所以一定多練練。至於語言,我推薦學習c或c++,至於c與c++是怎麼回事,怎麼學習,這是另一個比較難的話題。。。注意別上來就學vc++(mfc),否則你會一事無成!

4)程式設計很枯燥,所以要耐得住性子,不要一見到難題就退縮,一見到不會的概念就把書扔了,不會的時候請多看看基礎,八成是語言基礎不到位。

就寫這麼多吧,希望我的回答對你有幫助。你若有什麼問題還可以繼續問,若是程式設計過程中遇到什麼問題也可以問我,很歡迎的!

學程式設計是不是要很好的數學功底,學習程式設計要數學好嗎???

當然,如果數學,邏輯好點的好,當然可以的。系統學的話,可以到這邊看看 一個數學系的學生,基礎程式設計必須掌握,至少,c語言類的基礎程式設計是應該會的.如果你想把程式設計作為自己的專業,作為工作,那麼下面的個人意見僅供參考 數學對程式設計很重要,這並不是說要你數學課要考多高的分,數學掌握的有多好,而是...

物理與數學的關係物理和數學有關係嗎?

力的概念最初是具有人類自身生物學意義上的,類比地面物體的推一推動一動是力所致,所以人們總是以人為力去理解自然力。物質世界是以自然力而運動著的,然而我們卻用人為慣性機械論的思想觀點去類比對待自然界顯然是不妥的,力被定義為 引起物體運動變化的東西 只不過是人們對於司空見慣了的事實發生了某種誤會而已。問題...

最好的程式語言是什麼,學習程式設計什麼語言最好

這個問題屬於挑事的問題,因為這種東西根本沒有評定的標準 沒有最好,只有最適用 最順手 學習程式設計什麼語言最好 初學的話可以從python這樣比較容易的開始學 最近很多人都在問如何學習程式設計。我覺得學習程式設計最重要的是入門,如果你入門的時候有一個好的方法和思路,打下比較紮實的基礎,對今後的程式設...