日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

3倍根号x加1分之一c语言,用C语言将一个数开根号后再取倒数的方法

發布時間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 3倍根号x加1分之一c语言,用C语言将一个数开根号后再取倒数的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在上學的時候,曾經看過有人寫過這樣的算法,就是將一個數開根號后再取倒數的算法,我本人也覺得十分巧妙,于是就將它積累了下來,讓我們來看看是怎么回事:

#include

#include

float mysqrt(float x)

{

float xhalf = 0.5f * x;

int i = *(int *)&x;

i = 0x5f3759df - (i>>1);

x = *(float *)&i;

x = x * (1.5f - xhalf * x * x);

return x;

}

int main(void)

{

float x = 2.5 ;

float ret = mysqrt(x);

printf("%f\n",ret);

return 0 ;

}

它的作用是將一個數開平方并取倒,經測試這段代碼比(float)(1.0/sqrt(x))快4倍

算法的原理其實不復雜,就是牛頓迭代法,用x-f(x)/f'(x)來不斷的逼近f(x)=a的根。

簡單來說比如求平方根,f(x)=x^2=a ,f'(x)= 2*x,f(x)/f'(x)=x/2,把f(x)代入x-f(x)/f'(x)后有(x+a/x)/2,現在我們選a=5,選一個猜測值比如2,那么我們可以這么算

5/2 = 2.5;

(2.5+2)/2 = 2.25;

5/2.25 = xxx;

(2.25+xxx)/2 = xxxx

...

運行結果:

后端model傳入前端JSP頁面中的值判斷后再取值

所遇到的問題后端model傳入前端JSP頁面中的值通過foreach循環內要滿足條件才能取值給Div中,我們知道jsp頁面中可以直接用EL表達式取值,格式就是${"model中傳來的數據&q ...

[leetcode] 題型整理之數字加減乘除乘方開根號組合數計算取余

需要注意overflow,特別是Integer.MIN_VALUE這個數字. 需要掌握二分法. 不用除法的除法,分而治之的乘方 2. Add Two Numbers You are given two ...

vue在一個方法執行完后再執行另一個方法

vue在一個方法執行完后執行另一個方法 用Promise來實現.Promise是ES6的新特性,用于處理異步操作邏輯,用過給Promise添加then和catch函數,處理成功和失敗的情況 ES7中新 ...

JAVA設計方法思考之如何實現一個方法執行完畢后自動執行下一個方法

今天編程時,突然想起來在一些異步操作或Android原生庫的時候,需要我們實現一些方法, 這些方法只需要我們具體實現,然后他們會在適當的時候,自動被調用! 例如AsyncTask,執行玩doInBac ...

程序員之---C語言細節20(符號和有符號之間轉換、兩數相加溢出后數值計算)

主要內容:無符號和有符號之間轉換.兩數相加溢出后數值計算 #include /* 這個函數存在潛在漏洞 */ float sum_elements(float a[], ...

【C語言】編寫函數,將一個數的指定位置置0或置1

//編寫函數,將一個數的指定位置置0或置1 #include unsigned int set_bit(unsigned int num, int pos, int f ...

hdu 4027 Can you answer these queries? 線段樹區間開根號,區間求和

Can you answer these queries? Time Limit: 1 Sec??Memory Limit: 256 MB 題目連接 http://acm.hdu.edu.cn/sho ...

HDU 5828 Rikka with Sequence(線段樹 開根號)

Rikka with Sequence Time Limit: 6000/3000 MS (Java/Others)????Memory Limit: 65536/65536 K (Java/Othe ...

luogu P4145 上帝造題的七分鐘2 / 花神游歷各國 維護區間和&&區間開根號

因為開根號能使數字減小得非常快 所以開不了幾次(6次?)很大的數就會變成1..... 所以我們可以維護區間最大值,若最大值>1,則繼續遞歸子樹,暴力修改葉節點,否則直接return (好像也可以 ...

隨機推薦

mrjob 使用 mongodb 作為數據源

When using a mongoDB collection as input, add the arguments?-jobconf mongo.input.uri=

Find Minimum in Rotated Sorted Array問題的困惑

今天做了兩題,第二題沒解出來,發現太麻煩了,放棄了……明天腦子清楚的時候再做. 第一題就是標題中的這個問題.在一個旋轉排序數組中找出最小的值. 針對該問題出了兩道不同要求的題目,分別是不考慮重復元素的 ...

xcode6下使用autolayout+sizeclass實踐

歷史車輪滾滾向前,將autolayout配合sizeclass做布局的方式推上了主流,雖然有點晚,但最終還是進行了一次完整的實踐,特此記錄一下: 因為網上已經有很多博客介紹了autolayout配合s ...

移動Web開發小技巧

移動Web開發小技巧 添加到主屏后的標題(IOS) name="apple-mobile-web-app-title"?content="標題"> 啟用? ...

Android 檢測是否連接藍牙耳機

前言 ?????????歡迎大家我分享和推薦好用的代碼段~~ 聲明 ?????????歡迎轉載,但請保留文章原始出處: ?????????CSDN:http://www.csdn.net ?????? ...

javascript DOM對象(2)

訪問兄弟節點 1.?nextSibling 屬性可返回某個節點之后緊跟的節點(處于同一樹層級中). 語法: nodeObject.nextSibling 說明:如果無此節點,則該屬性返回 null. ...

【LeetCode每天一題】Add Two Numbers(兩鏈表相加)

You are given two?non-empty?linked lists representing two non-negative integers. The digits are stor ...

js代碼上的優化

例1??if ( config.url === '/web/teacher/classes'? || config.url === '/web/teacher/students || config.u ...

服務器FTP配置

一.如果沒有安裝FTP服務器,安裝如下: 二.添加SSL證書 三.給證書起一個有意義的名字就可以了 四.FTP ?SSL設置 五.FTP 身份驗證: 進入-如果開啟自己需要的-我這里是需要用戶輸入密碼 ...

總結

以上是生活随笔為你收集整理的3倍根号x加1分之一c语言,用C语言将一个数开根号后再取倒数的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。