Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

การประมาณค่าด้วยสูตร Lagrange's Interpolation ใน C++

ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมเพื่อหาผลลัพธ์จากสูตรการประมาณค่า Lagrange's Interpolation

คุณไม่ต้องเขียนตรรกะอะไรเพิ่มเติม แค่นำสูตรมาเขียนเป็นโค้ดเท่านั้น มาดูตัวอย่างโค้ด

ตัวอย่างโค้ด

#include<bits/stdc++.h> 
using namespace std; 

struct Data { 
    int x, y; 
}; 

double interpolate(Data function[], int xi, int n) { 
    double result = 0; 
    for (int i = 0; i < n; i++) { 
        double term = function[i].y; 
        for (int j = 0; j < n; j++) { 
            if (j != i) { 
                term = term * (xi - function[j].x) / double(function[i].x - function[j].x); 
            } 
        } 
        result += term; 
    } 
    return result; 
} 

int main() { 
    Data function[] = {{0,3}, {1,2}, {6,9}, {10,17}}; 
    cout << interpolate(function, 3, 5) << endl; 
    return 0; 
}

ผลลัพธ์

หากรันโค้ดด้านบน จะได้ผลลัพธ์ดังนี้:

3

สรุป

หากมีข้อสงสัยเกี่ยวกับบทช่วยสอนนี้ สามารถถามได้ในส่วนความคิดเห็น