張展遨
摘 要 數學算法是數學課程中一個很重要的組成部分,很多數學解答的過程中都會用到相關的數學算法。我們在簡化數學算法的計算過程中,還能得出一些規律,這些規律不僅僅對于數學領域,還有其他領域尤其是計算機編程技術有著重要影響。本文從高中生的角度來闡明數學算法在計算機編程技術中的作用及其優化問題。
【關鍵詞】數學算法 優化 計算機編程
現在社會的發展非常迅速,計算機技術相應的也變得的發達,方便了我們的生活。計算機技術的核心基礎就是計算機軟件的開發,然而軟件編程的基礎就是數學算法。所以,我們可以通過數學算法不斷的優化編程技術,讓軟件應用更加人性化、更加具有廣泛性,同時也應用到我們社會生活的方方面面。
1 數學算法及計算機編程的概述
數學中的算法是數學研究中的最基礎也是最關鍵的一個部分,對于其他的領域的影響也同樣也很大,尤其是對于計算機編程方面的研究。現代信息技術在迅猛發展與創新的同時,計算機編程同樣也受到了數學算法很大的影響,對于計算機編程技術人員來說,應該具備的素養就是對數學算法知識有很深刻的研究,因此數學算法在計算機編程中占據著重要因素。
2 數學算法在計算機編程中的作用
2.1 數學算法是計算機編程的基礎
對于一個實際問題,假如我們想要使用計算機去分析,那么我們首先就要生成一個數學模型,把這個事情的整體輪廓先表達出來,緊接著就是對這個模型進行相應的分析、編程、計算以及測試,這樣這件事情才能通過計算機程序來得到解決。我們從這幾個步驟中,可以看到數學算法和計算機編程的聯系,我們只有將這兩樣東西緊密結合起來才能高效解決的生活中的實際問題。
2.2 數學算法使計算機編程簡單化
在解決實際問題時往往會比較復雜,因此就需要建立數學模式來使復雜問題更加簡單化,我們的編程程序需要靠數學算法來優化。研究數學算法的主要目的是要問題得到優化,這樣我們就需要研究計算機編程中的數學算法,使數學算法得到改進和提高,進而提高數學算法在編程中的優化能力。對于計算機理論知識可分為計算機理論、數學算法理論等等,它們之間并不是相互孤立的,而是統一的,所以對于計算機今后的發展才會有本質上的突破。
3 數學算法可以優化計算機編程
3.1 計算機編程應用數學算法優化的簡單分析
計算機編程是計算機技術中最為核心也最為專業的一個組成部分,它是以計算機語言程序為基礎上而產生的。計算機編程是通過編程來實現實際的操作的。接下來我們來說說數學算法與編程優化它們之間的關系。我們知道計算機語言中應用最廣泛的語言就是C語言,它是很多的語言進一步發展的前提條件。重復編譯是用C語言編程中最容易出現的錯誤,由于C語言更加重視代碼邏輯的運行過程,因此在用C語言進行編寫程序語言時局限性是非常大的。因而,我們在編寫程序過程中要用數學算法對計算機編程進行優化。在編程時最重要的一點是要加入數學算法的思想,使程序不斷的得到簡化,從而使計算機編程得到優化,這樣就更好的提高解決問題的效率。
3.2 計算機編程應用數學算法優化的相關實例
我們要解決的例子:1×2×3×4×……×n計算到最終我們獲得的結果中末尾有多少個0?(N是小于10000大于1000的數)也就是:假設把n分成 b×10x的形式,在這其中b是不可以被10整除的數,這個時候x的值是多少?
對于這個問題,如果用計算機進行計算那速度就會比較快了,一般情況下都要優先思考的是計算出1×2×3×……×n的結果,之后再去數后面0的個數,但是我們要注意長整型只可以表示出十位有效數,然而,這個地方n的取值在1000至10000之間,那么我們就要思考計算機是否可以表示出呢?很明顯這種方法是行不通的.因此我們要用一個可行的最優數學算法對這個問題求解。
根據題意分析可以了解到,要想知道計算出結果末尾有多少個0,我們可以先計算出5的個數,只要計算出5的個數就可以得到0的個數,所以可以把5設為步長,進行第一次的循環計算,接著算出5的個數,通過計算我們可以看到,把之前的10、15、20…變成1、2、3…再以5 2次方設為步長,接著進行第二次循環計算,算出包含52有多少個。在第一次計算后,25、50、75…這些數變成了5、10、15… ,接著通過第二次循環計算后就變成了1、2、3…,接著把53設為步長。以此來推,當步長大于或者等于n時終止循環計算,最終我們獲得的結果就是每一次循環計算出的5的各次方數的個數之和。
C++計算機程序如下:
long num,i,n;
cout <<”please input n:”< cin>>n; i =n; n um=0; while(i>=5) { i=i/5; num+ =i; } Cou t<< ” 1*2*3*4*… *”<< n << endl; Cout << ” the number of 0 is”<< sum < < e n d l ; 當我們取n值為100時,此方法需要外循環的次數為3次。所以說數學算法對計算機編程具有很大的影響,可以這樣說它直接關系到計算機編程質量的優劣。 4 結語 數學算法為計算機的進步奠定了基礎,計算機的進步反作用于數學算法的研究,因此計算機與數學算法關系緊密相連。隨著計算機技術這一行業的迅猛發展,數學算法也跟著有了飛速進步,研究者也在一直研究著計算機編程與數學算法它們之間的聯系。但現在的算法體系還是難以擺脫馮·諾依曼有關計算機體系結構,所以我們還是需要繼續加倍努力,讓計算機體系得到新的發展。 參考文獻 [1]歐陽玉峰.數學算法對計算機編程優化的研究[J].黑龍江科技信息,2016(06). [2]余殷博.數學算法對計算機編程優化的思考[J].電子技術與軟件工程,2016(02). [3]李文舉.探討數學算法對計算機編程的優化作用[J].電子技術與軟件工程,2016(01). 作者單位 大連市第二十四中學 遼寧省大連市 116001