#計算方法**實現
##第一章: 緒論
####上機實踐1:
#include#includeusing namespace std;
double fun1(double x)
double fun2(double x)
int main()
else
}void
print
(int n)
}int
main()
計算結果:
c:\users\86185\clionprojects\untitled2\cmake-build-debug\untitled2.exe
i0 = 0.182322
i1 = 0.0883922
i2 = 0.0580389
i3 = 0.0431387
i4 = 0.0343063
i5 = 0.0284684
i6 = 0.0243249
i7 = 0.0212326
i8 = 0.0188369
i9 = 0.0169265
i10 = 0.0153676
i11 = 0.0140713
i12 = 0.0129766
i13 = 0.0120399
i14 = 0.0112289
i15 = 0.0105219
i16 = 0.00989032
i17 = 0.00937191
i18 = 0.00869602
i19 = 0.00915147
i20 = 0.00424264
程序已結束,退出** 0
結果分析:看起來i19 和i20不大正確,其他的還行.以為-5*i18=- 0.0434801 1/19=0.05263157895,這是相近數相減的錯誤.也可能是有效數字越來越少了.
##第二章: 非線性方程求根
####p170二分法:
#include
#include
typedef
double d;
using namespace std;
d fun
(d x)
d fen2
(d a,d b,d ep )
else
else}}
return
(a+b)/2
;}intmain()
結果:
c:\users\86185\clionprojects\untitled2\cmake-build-debug\untitled2.exe
2.528918
程序已結束,退出** 0
和課本答案一致.
####迭代法
迭代法只需對牛頓法稍加更改即可得到,因為牛頓法本質上就是一種特殊的迭代法.
####牛頓法
#include
#include
typedef
double d;
using namespace std;
d fun
(d x)
d fun1
(d x)
d newton
(d x,d ep,
int n)
elseif(
fabs
(x-x0)
} cout<<
"超時";}
intmain()
運算結果:
c:\users\86185\clionprojects\untitled2\cmake-build-debug\untitled2.exe
20.000001
2001.879385
程序已結束,退出** 0
可以看到 得到了和課本一樣的結果
##第三章 矩陣數值解法
####gauss-seidel 迭代法
課本p178頁 課本例題也是用固定大小的陣列,我就沒寫數讀取函式
#include#include#define n 100
typedef double d;
using namespace std;
d a[3][3]=,,};
d l[3][3]=;
d u[3][3]=;
d y[3]=;
d x[3]=;
d d[3]=;
d gauss(d a[3],d d[3],d x[3],int n_max,d ep)
if(fabs(x[i]-s)>e_max)
x[i]=s;
}if(e_max答案驗證:
c:\users\86185\clionprojects\untitled2\cmake-build-debug\untitled2.exe
0 0.2 0.1
0.2 0 0.1
0.2 0.4 0
0.999987 1.999994 2.999995
程序已結束,退出** 0
是和課本給出的答案一樣的 IOPS計算方法
通常當資料庫管理員提出需要更多儲存空間的時候,他們還會指定必須要達到多少iops。現在有這樣乙個需求,20tb儲存空間同時滿足4500 iops raid 5,我應該如何計算?raid 5或者raid 1 0的時候分別需要多少塊硬碟?首先需要知道i o中讀操作 read 與寫操作 write 所佔的...
RMS計算方法
先提乙個問題 使用訊號發生器輸出同乙個脈衝方波訊號,在示波器上採用直流耦合方式和交流耦合方式,在示波器上得出的rms值是不一樣的,存在很大的差異,為何?原因是直流耦合在取樣時以地作為平面採用波形,並帶有一定的直流成分,而交流則已波形的中心水平線作為平面取波形的絕對值採集計算,數值是不一樣的,兩者之間...
MTLD計算方法
計算方法 傳入乙個詞的list,其實mtld就是計算詞串的長度,有個要求,詞串的長度小於10他的數值就會失效,還有github上邊有另外一種說法就是總詞數不能小於50,我們用的後面那種。傳進來後,挨個詞進行ttr計算,就是比如說第乙個詞,詞數是1,唯一詞數也是1,那麼我們ttr就是1,然後判斷1 0...