Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để tính tích hợp kép

Chúng ta được đưa ra với giới hạn dưới của biến x, giới hạn trên của biến x, giới hạn dưới của biến y, giới hạn trên của biến y, các bước thực hiện cho x tương ứng và các bước thực hiện cho y tương ứng và nhiệm vụ là tạo ra tích phân kép và hiển thị kết quả.

Ví dụ

 Input-:bước cho x =1,2 bước cho y =0,54 giới hạn thấp hơn của x =1,3 giới hạn thấp hơn của x =2,1 giới hạn thấp hơn của y =1,0 giới hạn bước cho y =2,1 Đầu ra-:tích phân kép là:2,1  

Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau -

  • Nhập giá trị của giới hạn trên và giới hạn dưới của x và y với giá trị nhập đó là các bước đã thực hiện cho x và y
  • Phương pháp chúng tôi đang sử dụng để tính tích phân kép cho cả x và y là phương pháp Simpson 1/3
  • Tạo bảng sau trước khi tiếp tục tiếp tục

Chương trình C ++ để tính tích hợp kép

  • Áp dụng quy tắc simpson 1/3 cho mỗi hàng cho tích phân đầu tiên và lặp lại hai lần để tích phân kép
  • In kết quả

THUẬT TOÁN

 StartStep 1-> khai báo hàm tính lũy thừa để tích phân float fun (float x, float y) return pow (pow (x, 4) + pow (y, 5), 0.5) Bước 2-> khai báo hàm cần tìm giá trị tích phân kép float doubleIntegral (float step_x, float step_y, float Lower_x, float upper_x, float Lower_y, float upper_y) Khai báo int n1, n2 Khai báo float arr [50] [50], arr_2 [50], tập kết quả n1 =( upper_x - Lower_x) / step_x + 1 set n2 =(upper_y - Lower_y) / step_y + 1 Loop For int i =0 and i  Trong main () khai báo bước cho x là float step_x =1.2 Khai báo bước cho y là float step_y =0.54 Khai báo giới hạn dưới của xfloat Lower_x =1.3 Khai báo giới hạn trên của xfloat upper_x =2.1 Khai báo giới hạn dưới của yfloat Lower_y =1.0 Khai báo giới hạn trên của yfloat upper_y =2.1 Lệnh gọi (step_x, step_y, Lower_x, upper_x, Lower_y, upper_y) Dừng lại 

Ví dụ

 #include  using namespace std; float fun (float x, float y) {return pow (pow (x, 4) + pow (y, 5), 0.5);} // Hàm để tìm tích phân kép valuefloat doubleIntegral (float step_x, float step_y, float Lower_x, float upper_x, float Lower_y, float upper_y) {int n1, n2; float arr [50] [50], arr_2 [50], kết quả; n1 =(trên_x - dưới_x) / bước_x + 1; n2 =(trên_y - dưới_y) / bước_y + 1; for (int i =0; i  

Đầu ra

 tích hợp kép là:2.1