C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

シンプソンの3/8ルールを実装するC++プログラム


このチュートリアルでは、SImpsonの⅜ルールを実装するプログラムについて説明します。

シンプソンの⅜ルールは、数値積分を行うために使用されます。この方法の最も一般的な使用例は、定積分の数値近似を実行することです。

この場合、グラフの放物線は近似を実行するために使用されます。

#include<iostream>
using namespace std;
//function that is to be integrated
float func_inte( float x){
   return (1 / ( 1 + x * x ));
}
//calculating the approximations
float func_calculate(float lower_limit, float upper_limit, int
interval_limit ){
   float value;
   float interval_size = (upper_limit - lower_limit) / interval_limit;
   float sum = func_inte(lower_limit) + func_inte(upper_limit);
   for (int i = 1 ; i < interval_limit ; i++) {
      if (i % 3 == 0)
         sum = sum + 2 * func_inte(lower_limit + i * interval_size);
      else
         sum = sum + 3 * func_inte(lower_limit + i * interval_size);
   }
   return ( 3 * interval_size / 8 ) * sum ;
}
int main(){
   int interval_limit = 8;
   float lower_limit = 1;
   float upper_limit = 8;
   float integral_res = func_calculate(lower_limit,
   upper_limit, interval_limit);
   cout << integral_res << endl;
   return 0;
}

出力

0.663129

  1. AVLツリーを実装するためのC++プログラム

    AVLツリーは自己平衡二分探索木であり、左右のサブツリーの高さの差がすべてのノードで複数になることはありません。 ツリーの回転は、AVLツリーの要素の順序を妨げることなく構造を変更する操作です。ツリー内で1つのノードを上に移動し、1つのノードを下に移動します。これは、ツリーの形状を変更したり、小さいサブツリーを下に移動したり、大きいサブツリーを上に移動したりして高さを低くしたりするために使用され、多くのツリー操作のパフォーマンスが向上します。回転の方向は、木のノードが移動する側に依存しますが、他の人は、どの子がルートの場所をとるかに依存すると言います。これは、AVLツリーを実装するためのC+

  2. STLにSet_Symmetric_differenceを実装するC++プログラム

    これは、set_symmetric_differenceを実装するためのC++プログラムです。 2つのセットの対称差は、一方のセットには存在するが、もう一方のセットには存在しない要素によって構築されます。 一般的な集合演算は-です セットユニオン 交差点を設定 対称集合の差または排他的論理和 差または減算を設定 アルゴリズム Begin    Declare set vector v and iterator st.   Initialize st = set_symmetric_difference (set1, set1 + n, set2, se