數值計算,利用梯形法和拋物線法計算圓周率

來源:互聯網
上載者:User

公式pai=4*∫10dx/(1+x2)

把[0.1]分成10等份,用兩中方法分別計算

=======================================================

class work2 {   public static void main (String args[]){   double h = 0.1;//參數h   double m1 =0 ;//複化梯形求和求和   double n =10;   double I=0;//最後結果   double H_2 =0.2;   double m =5 ;//由於n=2m.n=10,所以m=5   double s1=0;//複化拋物線第一個數組求和   double s2=0;//複化拋物線第二個數組求和   double ss[]  = new double[10];//複化梯形公式計算中的求和單元   double ss1[]=new double[5];//複化拋物線中用到的第一個數組   double ss2[]=new double[4];//複化拋物線中用到的第二個數組

   double k[]={0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9};//10等分[0,1]   for(int i=0;i<10;i++){       ss[i] = 1/(1+k[i]*k[i]);     }     //teat pass     for(int i =0;i<10;i++){       m1 = m1 +ss[i];     }     //test pass     I = H_2*(0.5+2*m1);//0.5是f(b)

// --------------------test code     System.out.println("===複化梯形公式計算(包含測試及結果)===");     System.out.println("複化梯形公式單項結果");     for(int i =0;i<10;i++){       System.out.println(ss[i]);

     }     System.out.println("結果求和 m is "+ m1);     System.out.println("結果是 "+ I);     System.out.println("==================================");// ------------------------------------------------     //==開始複化拋物線公式計算======     System.out.println("複化拋物線公式計算");     //由於拋物線運算對數組的操作比較複雜,所以我重新定義數組k[]     double k_2[] = {0,0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9};     //這樣數組k就和實際中的對應起來了,哦哈哈          for(int i =1;i<=m;i++){      int n1 = 2*i-1;      ss1[i-1] = 1/(1+k_2[n1]*k_2[n1]);            System.out.println(ss1[i-1]);//測試計算是否正確,     }     System.out.println("運算正確");     System.out.println("第二個數組計算");     for(int i = 1;i<=(m-1);i++){      int n1 = 2*i;      ss2[i-1]=1/(1+k_2[n1]*k_2[n1]);      System.out.println(ss2[i-1]);//測試計算是否正確,     }     System.out.println("運算正確");     //對2個數組求和     for(int i =0;i<5;i++){        s1 = s1 +ss1[i];      }     System.out.println("ss1求和是"+ s1);     for(int i =0;i<4;i++){        s2 = s2 +ss2[i];      }     System.out.println("ss2求和是"+ s2);     System.out.println("運算正確");     I = (h/3)*(1+0.5+4*s1+2*s2);     System.out.println("結果是 "+ I);     //拋物線法不知道正不正確,書上沒有答案          }   } ===========================================


相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。