二、簡單應(yīng)用題
編寫函數(shù)fun(),它的功能是利用以下所示的簡單迭代方法求方程cos(x)-x=0的一個實根。
xn+1=cos(xn)
迭代步驟如下:
(1)取x1初值為0.0。
(2)x0=x1,把x1的值賦給x0。
(3)x1=cos(x0),求出一個新的x1。
(4)若x0-x1的絕對值小于0.000001,則執(zhí)行步驟(5),否則執(zhí)行步驟(2)。
(5)所求x1就是方程cos(x)-x=0的一個實根,做為函數(shù)值返回。
程序輸出結(jié)果Root=0.739085。
注意:部分源程序已存在文件kt6_2.cpp中。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入所編寫的若干語句。
文件kt6_2的內(nèi)容如下:
#include
#include
#include
floatfun()
{
}
voidmain()
{cout<<"Root="<
【參考答案】
float fun()
{
float x1=0.0,x0;
do
{ x0=x1;
x1=cos(x0);}
while(fabs(x0-x1)>=1e-6);
return x1;
}
【試題解析】
解答本題的關(guān)鍵之處在于看清題中所給的“迭代步驟”,同時要理解xn+1=cosxn通式的含義,要考慮到x1的初值為0.0。
相關(guān)推薦:
計算機(jī)等級考試二級C++模擬題及解析1(筆試部分) 等考二級C++:用VisualC++實現(xiàn)注冊表簡單操作 計算機(jī)等考二級C++:實例編程蟻群算法C++實現(xiàn)