程式設計作業(2)

2021-10-03 13:12:48 字數 1080 閱讀 1155

/* 但是這次太簡單直接就發發發了唉 */

作業:

用高效演算法自製乙個高效率的pow函式, 指數只使用正數  (不包括0,適用於極大的整數)
|| 寫在前面:

乙個誤區更正(一直沒注意到...):for迴圈的第一次執行時不單單要執行初始化語句,同時得滿足判斷條件才能進入迴圈
|| 演算法一:普普通通

若題目要求使用乙個變數表示結果x^a,並直接用該值作為返回值

解題思路:將該變數初始化為1.0

優化思路:將該變數直接初始化為底數x

double

mypow

(double x,

int a)

/*小優化*/

double

mypow

(double x,

int a)

|| 演算法二(用個遞迴,執行效率不高不過看起來挺好玩)

解題思路:抽象一下程式第一步即顯而易見:

x^10 = x^5 * x^5 / x^11 = x^10 * x 故分兩種情況 1,冪乘以冪 2,冪乘以底數自身

//明確函式功能:指定了底數和指數後返回出它的冪 

//定好頭尾: 尾: 指數被除為0,返回1; 頭: 分兩種情況 1,冪乘以冪 2,冪乘以底數自身

double

mypow

(double x,

int n,

double

&res)

intmain()

|| 演算法三: 大o:logn ,高效 [誇]

解題思路:x^10 = (x^5) * (x^5); x^5=x^4 * x ; x^4 = x^2 * x^2; ...
double

mypow

(double x,

int n)

else

}return res;

}

c語言程式設計作業2

通過對迴圈控制這一章的學習,了解了相較於之前更為複雜的c語言結構,並且開始解決一生活中常見的問題,將c語言程式設計進一步推向了實際應用。c語言提供for while do while三種迴圈語句。其中while語句 for語句屬於當型迴圈結構,do while語句屬於直到型迴圈語句,這三種語句各有各...

程式設計 Week2 作業

題意 東東有一張地圖,想通過地圖找到妹紙。地圖顯示,0表示可以走,1表示不可以走,左上角是入口,右下角是妹紙,這兩個位置保證為0。既然已經知道了地圖,那麼東東找到妹紙就不難了,請你編乙個程式,寫出東東找到妹紙的最短路線。input 輸入是乙個5 5的二維陣列,僅由0 1兩數字組成,表示法陣地圖。ou...

Week2 程式設計作業

j x theta y 2 j 1 2 m sum j 直接按代價函式的公式敲 需新增的 temp0 theta 1 alpha m sum x theta y x 1 temp1 theta 2 alpha m sum x theta y x 2 theta temp0 temp1 要讓theta...