某乡镇企业2010-2016年的大致生产利润如下表,试采用正确的方法预测2017和2018年的利润
年份 2010 2011 2012 2013 2014 2015 2016
利润(万元) 70 122 144 152 174 196 202

#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
double x[7], y[7];
double table[8][8];
struct Newtoninterpolation {Newtoninterpolation() {x[0] = 2010, y[0] = 70;x[1] = 2011, y[1] = 122;x[2] = 2012, y[2] = 144;x[3] = 2013, y[3] = 152;x[4] = 2014, y[4] = 174;x[5] = 2015, y[5] = 196;x[6] = 2016, y[6] = 202;}public:void  Lagrangeinterpolation_solution(double _x) {double result=0.0, t = 0;for (int i = 0; i < 7; i++) {t = 1;for (int j = 0; j < 7; j++) {if (j != i)t *= (_x - x[j]) / (x[i] - x[j]);}result += t * y[i];}cout << _x << "的拉格朗日插值为:" <<result<<endl;}void Newton_solution() {for (int i = 0; i < 7; i++)table[i][0] = y[i];for (int i = 1; i <= 7; i++) {for (int j = 1; j <= i; j++) {table[i][j] = (table[i][j - 1] - table[i - 1][j - 1]) / (x[i] - x[i - j]);}}cout << "差商表:" << endl;for (int i = 0; i < 7; i++) {for (int j = 0; j <= i; j++) {cout << table[i][j] << " ";}cout << endl;}cout << "2017估计值:" << endl;double a = 2017, result = 0, c = 1;for (int i = 0; i < 7; i++) {result += table[i][i] * c;c *= (a - x[i]);}cout << result << endl;a = 2018, result = 0, c = 1;cout << "2018估计值:" << endl;for (int i = 0; i < 7; i++) {result += table[i][i] * c;c *= (a - x[i]);}cout << result << endl;}void fitting_process(long long _x) {long long a, b;long  long a1[2][3] = { 0 }, c1[2][3] = {0};long  long r = 0;long  long r1 = 0;a1[0][0] = 7;for (int i = 0; i < 7; i++) {a1[0][2] =a1[0][2]+ y[i];a1[1][2] =a1[1][2]+ x[i] * y[i];}
//          cout<<c1[0][0]<<" "<<c1[1][0]<<endl;for (int i = 0; i < 7; i++) {r =r + x[i];r1 =r1 + (x[i] * x[i]);}a1[0][1] = r;a1[1][0] = a1[0][1];a1[1][1]=r1;long long k = a1[1][0] / a1[0][0];for (int j = 0; j < 3; j++) {a1[1][j] =a1[1][j] - a1[0][j] * k;}b = a1[1][2] / a1[1][1];a=(a1[0][2] - a1[0][1] * b) / a1[0][0];cout << "线性拟合"<<_x << "年的预测是:" << a + b * _x << endl;}};int main() {cout << "1707004347--黄洪飞" << endl;Newtoninterpolation newtoninterpolation;newtoninterpolation.Lagrangeinterpolation_solution(2017);newtoninterpolation.Lagrangeinterpolation_solution(2018);newtoninterpolation.Newton_solution();newtoninterpolation.fitting_process(2017);newtoninterpolation.fitting_process(2018);system("pause");return 0;
}

拉格朗日、牛顿、拟合的应用相关推荐

  1. matlab 椭圆方程拟合,matlab中如何插值拟合求椭圆方程

    [g_fitting.rar] 使用正交多项式完成数据拟合.程序对读入的gps采样点完成曲线拟合. (2007-08-01, matlab, 1KB, 26次) [曲面拟合.rar] 这是利用matl ...

  2. 拉格朗日插值法 【python】

    一.插值 设函数y=f(x)在区间[a,b]上连续,给定n+1个点 a≤x0<x1<....<xn≤b 已知,f(xk)=yk(k=0,1....n),在函数类P中寻找一个函数Φ(x ...

  3. 拉格朗日Lagrange插值多项式

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本文转载 ...

  4. [数值计算-14]:拉格朗日插值与Python代码实现

    作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing 本文网址:https://blog.csdn.net/HiWangWenBing/article ...

  5. [Python]Tkinter+Numpy+Matplotlib 进行的简单交互+曲线拟合+图像绘制【已改进】

    用Python的Tkinter.Numpy.Matplotlib库对曲线拟合的一点探索[已改进] 需要用到的库:如标题 三大方面 功能 需要的库 一. 简单交互,获取函数或者样本点 tkinter[p ...

  6. pandas--数据预处理

    数据预处理 合并数据 堆叠合并数据 横向堆叠 纵向堆叠 主键合并数据 重复合并数据 任务实现 清洗数据 检测和处理重复值 记录重复数据 特征重复 检测与处理缺失值 删除法 替换法 插值法 检测与处理异 ...

  7. 数值积分计算方法——《数值计算方法》

    <数值计算方法>系列总目录 第一章 误差序列实验 第二章 非线性方程f(x)=0求根的数值方法 第三章 CAD模型旋转和AX=B的数值方法 第四章 插值与多项式逼近的数值计算方法 第五章 ...

  8. 数据科学原理与数据处理

    数据科学原理与数据处理 1 Python行业分析 通过Stack OverFlow专业网站的大数据统计,Python相关技术模块访问量最大的簇是数据科学相关,然后才是后台开发. 1.1 数据处理流程 ...

  9. 计算方法(五)函数插值

    首先知道插值算法是用来图像缩放的.(图片放大,像素点增多,如何处理放大的更多像素点上的值) 1. 引入 1.1 最邻近插值算法 思路:新位置就照搬旁边的元素. A是原图像,B是新图像(更大的),图像就 ...

  10. 2021年辽宁省大学生数学建模

    2021年辽宁省大学生数学建模 C题 碳中和问题 碳中和是指人为排放量(化石燃料利用和土地利用)被人为努力(木材蓄积量.土壤有机碳.工程封存等)和自然过程(海洋吸收.侵蚀-沉积过程的碳埋藏等)所吸收. ...

最新文章

  1. Zaxis数据编程方法
  2. sql中在查询语句中加判断,控制输出的内容
  3. pytorch入门使用
  4. sublime text3 3176激活
  5. oracle数据库等级,[数据库]Oracle数据库建表并用SQL编程分等级
  6. 凭什么说“Python 太慢,Java 太笨拙,我讨厌 JavaScript”?
  7. python编程100例-Python3经典100例(①)
  8. 使用 CloudFlare CDN 自定义节点加速网站
  9. 摄影——相机的成像原理
  10. Linux储存结构与磁盘分区详解
  11. IT接地系统工作原理
  12. FeedSky更新出现很大延时
  13. mysql relay log 查看_mysql relay log和binlog 小结
  14. 献给还在加班的你:摸鱼一时爽,一直摸鱼一直爽~
  15. GEM5 模拟器简介
  16. 利用Chrome Headless模式网页转PDF
  17. Linux下mysql数据库从服务器A只迁移DATA文件夹到服务器B
  18. excel中文件合并F9键
  19. 微信惊现超级大Bug:试过的人都哭了...
  20. 动态规划与最长重复子串 LRS and Dynamic Programming

热门文章

  1. 南方证券超强版 下载
  2. 拆分pdf文件最简单的方法
  3. 方向键按键转发,模仿笔记本Fn按键
  4. 批量下载CMIP6数据
  5. skynet:cluster
  6. JUC强大的辅助工具类
  7. Python3实现基于百度AI开放平台和图灵机器人API聊天机器人
  8. 性能服务器e5,英特尔至强E5服务器到底有多强?
  9. 8-1 职场价值塑造-摆脱低价值瓶颈,展示高价值收获新机会
  10. html 按钮变成椭圆,HTML 渐变椭圆按钮