国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C > 正文

詳細(xì)解析C語(yǔ)言中的開(kāi)方實(shí)現(xiàn)

2020-01-26 14:59:37
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

關(guān)于C語(yǔ)言中的開(kāi)方計(jì)算,首先想到的當(dāng)然是sqrt()函數(shù),讓我們先來(lái)回顧一下它的基本用法:
頭文件:#include <math.h>

sqrt() 用來(lái)求給定值的平方根,其原型為:

  double sqrt(double x);

參數(shù)

x 為要計(jì)算平方根的值。

如果 x < 0,將會(huì)導(dǎo)致 domain error 錯(cuò)誤,并把全局變量 errno 的值為設(shè)置為 EDOM。

返回值

返回 x 平方根。

注意,使用 GCC 編譯時(shí)請(qǐng)加入-lm。

實(shí)例計(jì)算200 的平方根值。

#include <math.h>main(){  double root;  root = sqrt(200);  printf("answer is %f/n", root);}

輸出結(jié)果:
answer is 14.142136

題目
求整數(shù)N的開(kāi)方,精度在0.001

二分法
若N大于1,則從[1, N]開(kāi)始,low = 1, high = N, mid = low + (high - low) >> 1開(kāi)始進(jìn)行數(shù)值逼近

若N小于1,則從[N, 1]開(kāi)始,low = 0, high = N, mid = low + (high - low) >> 1開(kāi)始進(jìn)行數(shù)值逼近

ac代碼


 /**    * 創(chuàng)新工廠2014年校招算法題目,求整數(shù)N的開(kāi)方,精度為0.001    */      #include <stdio.h>   #include <stdlib.h>   #include <math.h>      #define ACCURACY 0.001      double newSqrt(double n)   {     double low, high, mid, tmp;        // 獲取上下界     if (n > 1)  {       low = 1;       high = n;     } else {       low = n;       high = 1;     }        // 二分法求開(kāi)方     while (low <= high) {       mid = (low + high) / 2.000;          tmp = mid * mid;          if (tmp - n <= ACCURACY && tmp -n >= ACCURACY * -1) {         return mid;       } else if (tmp > n) {         high = mid;       } else {         low = mid;       }     }        return -1.000;   }      int main(void)   {     double n, res;        while (scanf("%lf", &n) != EOF) {       res = newSqrt(n);       printf("%lf/n", res);     }        return 0;   } 

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 万全县| 米林县| 洛隆县| 海盐县| 昂仁县| 平泉县| 大竹县| 阜新市| 尉氏县| 银川市| 金寨县| 黄冈市| 华安县| 肥东县| 行唐县| 万载县| 荣昌县| 疏勒县| 虹口区| 许昌县| 张家川| 高邑县| 雷波县| 榆中县| 绥阳县| 鄂伦春自治旗| 出国| 改则县| 阜宁县| 阿巴嘎旗| 蒙城县| 苍溪县| 新巴尔虎右旗| 合阳县| 高安市| 淮阳县| 扬州市| 阿克苏市| 顺平县| 阿图什市| 潞西市|