たとえば、sinxとcosxは次の2つの多項式で近似されます。

       在数学上对一些复杂的函数,为了便于研究,往往用一些简单的函数来近似表达。常用多项式来近 似表示函数,只需对自变量进行有限次数的加、减、乘、除运算便能求出函数值来。例如关于 sinx 与 cosx 是用如下两个多项式来近似表达的

ここに画像の説明を挿入
実際の計算における誤差制御の方法は、残りの項の絶対値が10-5または10-6に設定できる所定の値ε未満である限りです。
タイトルの説明と関連する数学的知識に従って、[0、90°]の間隔でsinxとcosxの2つの関数の任意の点を計算するプログラムを記述してください。

プログラミングガイダンス

    从程序设计角度来说,本题目主要训练编程者设计函数与运用函数的能力。这里给出 sinx 的计算程 序的编写方法,cosx 可以参考 sinx 的计算方法进行设计。 根据题目的描述可以看出,sinx 是用一个多项式来近似表示的,而多项式中的各项均有规律,其通 项可以用如下公式来表示。 

ここに画像の説明を挿入
一般項の位置をiで表し、一般項の絶対値をitemで表し、一般項の記号をsで表し、その初期値を1とし、一般項の和をsumで表すとします。次の4つのステップは、問題を解決するために、一般的な項目の値が所定の数ε未満になるまで繰り返すことができます。
(1)一般項を解き、一般項の値をアイテムに入れます;
(2)一般項itemの値にsを掛けて合計します。つまり、sum = sum + s * item;
(3)一般項の記号sは反対の数値、つまりs = -s;
(4)一般項の項目数+ 1、i = i + 1;上記の4つのステップで最も重要なことは、一般項の値を見つけることです。一般項は分子がべき関数xnである分子が一般項の位置の数に関連し、分母が一般項の位置の数に関連する階乗nである小数部!したがって、分子と分母は、完了する関数として設計できます。
3.コード例
プログラムの指数関数は2乗(double x、int n)、階乗の関数はint fact(int n)、正弦関数の計算はdouble my_sin(double x)で記述されています。ここに画像の説明を挿入
注:このプログラムは、C言語システムの標準正弦関数を呼び出している間に、メイン関数のカスタム正弦関数my_sin()を呼び出します。その目的は、カスタム正弦関数の正確さをカスタム正弦関数と比較することです。
ここに画像の説明を挿入

オリジナルの記事を10件公開 気に入りました12 訪問者1862

おすすめ

転載: blog.csdn.net/qq_44236958/article/details/88933687