当前位置: 首页 > news >正文

c++编写拉格朗日插值

c++编写拉格朗日插值

在这里插入图片描述

#include <iostream>
#include <vector>
#include <windows.h>  // 用于设置控制台编码
using namespace std;

double lagrangeInterpolation(vector<double>& x, vector<double>& y, double x_val) {
    double result = 0.0;
    for (size_t i = 0; i < x.size(); i++) {
        double term = y[i];
        for (size_t j = 0; j < x.size(); j++) {
            if (j != i) {
                term *= (x_val - x[j]) / (x[i] - x[j]);
            }
        }
        result += term;
    }
    return result;
}

int main() {
    SetConsoleOutputCP(CP_UTF8);  // 设置控制台为 UTF-8 编码
    
    vector<double> x = {0, 1, 2, 3};
    vector<double> y = {1, 2, 0, 4};
    
    cout << "已知数据点:" << endl;
    for (size_t i = 0; i < x.size(); i++) {
        cout << "(" << x[i] << ", " << y[i] << ")" << endl;
    }
    
    double x_test = 1.5;
    double y_result = lagrangeInterpolation(x, y, x_test);
    
    cout << "\n插值结果:" << endl;
    cout << "当x = " << x_test << "时,y = " << y_result << endl;
    
    return 0;
}

在这里插入图片描述

相关文章:

  • 1.25-20GHz/500ns超快跳频!盛铂SWFA300国产捷变频频率综合器模块赋能雷达/5G/电子战高频精密控制 本振/频综模块
  • Elasticsearch:理解政府中的人工智能 - 应用、使用案例和实施
  • 深入探索C++:从基础到实践
  • Nacos Console 模块的作用是什么?是如何与 Server 端交互的?
  • 大数据专业毕业设计选题推荐:实用课题推荐
  • 基于 Redhat 9.5 的 LVS 负载均衡架构下 Nginx 服务器的部署与连通性实验
  • python.pandas.day17
  • Linux--命令行操作
  • AI for CFD入门指南(传承版)
  • centOS 7.9 65bit 修复Openssh漏洞
  • 使用QT画带有透明效果的图
  • 魔法原子,以全栈自研撬动人形机器人通用化未来
  • 【免费分享】PSO-BP特征重要性分析matlab语言
  • BFS解决最短路径问题(使用BFS解决最短路径问题的黄金法则)
  • Python生成整数序列之 range()函数
  • 《C++11:bind绑定器与function包装器》
  • Kotlin when 表达式完全指南:从基础到高级的12种实战用法
  • Redis的深入了解
  • 页面类buttons权限的简单控制
  • MySQL学习日志--多表查询篇
  • 游戏网站设计/业务网站制作
  • 文明网站的建设与管理几点思考/重庆发布的最新消息今天
  • 邯郸优企网络/自然搜索优化
  • 机械毕业设计代做网站推荐/现在百度推广有用吗
  • 飓风算法受影响的网站有哪些/简述搜索引擎的工作原理
  • 学校门户网站建设工作汇报/seo外包公司兴田德润官方地址