已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最小二乘法程序 include include include include define N 5 N 个点 define T 3 T 次拟合 define W 1 权函数 define PRECISION 0 00001 float pow n float a int n int i if n 0 return 1 float res a for i 1 i n i res a return res void mutiple float a N float b T 1 float c T 1 float res 0 int i j k for i 0 i T 1 i for j 0 j T 1 j res 0 for k 0 k N k res a i k b k j c i j res void matrix trans float a T 1 float b N int i j for i 0 i N i for j 0 j T 1 j b j i a i j void init float x y 2 int n int i printf 请输入 d 个已知点 n N for i 0 i n i printf x d y d i i scanf f f void get A float matrix A T 1 float x y 2 int n int i j for i 0 i N i for j 0 j T 1 j matrix A i j W pow n x y i 0 j void print array float array T 1 int n int i j for i 0 i n i for j 0 j T 1 j printf g array i j printf n void convert float argu T 2 int n int i j k p t float rate temp for i 1 i n i for j i j n j if argu i 1 i 1 0 for p i p n p if argu p i 1 0 break if p n printf 方程组无解 n exit 0 for t 0 t n 1 t temp argu i 1 t argu i 1 t argu p t argu p t temp rate argu j i 1 argu i 1 i 1 for k i 1 k n 1 k argu j k argu i 1 k rate if fabs argu j k 0 i temp argu i n for j n 1 j i j temp argu i j root j root i temp argu i i void get y float trans A N float x y 2 float y int n int i j float temp for i 0 i n i temp 0 for j 0 j N j temp trans A i j x y j 1 y i temp void cons formula float coef A T 1 float y float coef form T 2 int i j for i 0 i T 1 i for j 0 j T 2 j if j T 1 coef form i j y i else coef form i j coef A i j void print root float a int n int i j printf d 个点的 d 次拟合的多项式系数为 n N T for i 0 i n i printf a d g i 1 a i printf n printf 拟合曲线方程为 ny x g a 0 for i 1 i n i printf g a i for j 0 j 2007 4 19 19 23 57 一级 初级 user1 100 40389872 5478010 1526752 jiangxc2004 0 2007 4 19 19 26 11 一级 初级 user1 100 40390406 5478010 1526752 jiangxc2004 0 CDATA include void main int num i float x y l m n p a b i 1 l 0 0 m 0 0 n 0 0 p 0 0 printf 请输入你想计算的 x y 的个数 scanf d if num 1 while i num printf 请输入 x 的值 scanf lf printf 请输入 y 的值 scanf lf l x m y n x y p x x i a num n l m num p l l b p m n l num p l l printf 最小二乘法所算得的斜率和截距分别为 f 和 f n a b else printf mun 输入有误 include include include include 矩阵结构体矩阵结构体 structstruct MatrixMatrix intint m n mm n m 为行数为行数 n n 为列数为列数 doubledouble pm pm 指向矩阵二维数组的指针指向矩阵二维数组的指针 初始化矩阵初始化矩阵 mtmt 并置矩阵的行为 并置矩阵的行为 m m 列为 列为 n n voidvoid InitMatrix structInitMatrix struct MatrixMatrix mt int mt int m intm int n n intint i i 指定矩阵的行和列指定矩阵的行和列 mt m m mt m m mt n n mt n n 为矩阵分配内存为矩阵分配内存 mt pm newmt pm new doubledouble m m for i 0 i m i for i 0 ipm i newmt pm i new double n double n 用用 0 0 初始化矩阵初始化矩阵 mtmt 并置矩阵的行为 并置矩阵的行为 m m 列为 列为 n n voidvoid InitMatrix0 structInitMatrix0 struct MatrixMatrix mt int mt int m intm int n n intint i j i j InitMatrix mt m n InitMatrix mt m n for i 0 i m i for i 0 i m i for j 0 j n j for j 0 jpm i j 0 0 mt pm i j 0 0 销毁矩阵销毁矩阵 mtmt voidvoid DestroyMatrix structDestroyMatrix struct MatrixMatrix mt mt intint i i 释放矩阵内存释放矩阵内存 for i 0 im i for i 0 im i deletedelete mt pm i mt pm i deletedelete mt pm mt pm 矩阵相乘矩阵相乘 mt3 mt1 mt2mt3 mt1 mt2 成功返回成功返回 1 1 失败返回 失败返回 0 0 intint MatrixMul MatrixMatrixMul Matrix mt1 Matrix mt1 Matrix mt2 Matrix mt2 Matrix mt3 mt3 intint i j k i j k doubledouble s s 检查行列号是否匹配检查行列号是否匹配 if mt1 n mt2 m mt1 m mt3 m mt2 n mt3 n if mt1 n mt2 m mt1 m mt3 m mt2 n mt3 n returnreturn 0 0 for i 0 im i for i 0 im i for j 0 jn j for j 0 jn j s 0 0 s 0 0 for k 0 kn k for k 0 kn k s s mt1 pm i k mt2 pm k j s s mt1 pm i k mt2 pm k j mt3 pm i j s mt3 pm i j s returnreturn 1 1 矩阵转置矩阵转置 mt2 T mt1 mt2 T mt1 成功返回成功返回 1 1 失败返回 失败返回 0 0 intint MatrixTran MatrixMatrixTran Matrix mt1 Matrix mt1 Matrix mt2 mt2 intint i j i j 检查行列号是否匹配检查行列号是否匹配 if mt1 m mt2 n mt1 n mt2 m if mt1 m mt2 n mt1 n mt2 m returnreturn 0 0 for i 0 im i for i 0 im i for j 0 jn j for j 0 jn j mt2 pm j i mt1 pm i j mt2 pm j i mt1 pm i j returnreturn 1 1 控制台显示矩阵控制台显示矩阵 mtmt voidvoid ConsoleShowMatrix MatrixConsoleShowMatrix Matrix mt mt intint i j i j for i 0 im i for i 0 im i printf n printf n for j 0 jn j for j 0 jn j printf 2 4fprintf 2 4f mt pm i j mt pm i j printf n printf n Guass Guass 列主元素消元法求解方程列主元素消元法求解方程 Ax b a A b Ax b a A b intint Guassl doubleGuassl double a double a double x int x int n n intint i j k numl h t i j k numl h t doubledouble l max l max l newl new double n double n h newh new int n int n for i 0 i n i for i 0 i n i h i i h i i 行标行标 for i 1 i n i for i 1 i n i max fabs a h i 1 i 1 max fabs a h i 1 i 1 numl i 1 numl i 1 列元的最大值列元的最大值 for j i j n j for j i jmax if fabs a h j i 1 max numl h j numl h j max fabs a h j i 1 max fabs a h j i 1 if max 0 00000000001 if maxi 1 if numl i 1 t h i t h i h i h numl h i h numl h numl t h numl t for j i j n j for j i j n j l j a h j i 1 a h i 1 i 1 l j a h j i 1 a h i 1 i 1 for j i j n j for j i j n j for k i k n 1 k for k i k 0 i for i n 1 i 0 i x i a h i n x i a h i n for j i 1 j n j for j i 1 j n j x i x i a h i j x j x i x i a h i j x j x i x i a h i i x i x i a h i i 清除临时数组内存清除临时数组内存 deletedelete l l deletedelete h h returnreturn 1 1 最小二乘法求解矩阵最小二乘法求解矩阵 Ax bAx b intint MinMul MatrixMinMul Matrix A MatrixA Matrix b doubleb double x x intint i j i j if b n 1 if b n 1 returnreturn 0 0 if A m b m if A m b m returnreturn 0 0 MatrixMatrix TranA TranA 定义定义 A A 的转置的转置 InitMatrix0 InitMatrix0 MatrixTran MatrixTran MatrixMatrix TranA A TranA A 定义定义 A A 的转置与的转置与 A A 的乘积矩阵的乘积矩阵 InitMatrix0 InitMatrix0 MatrixMul AMatrixMul A 的转置与的转置与 A A 的乘积的乘积 MatrixMatrix TranA b TranA b 定义定义 A A 的转置与的转置与 b b 的乘积矩阵的乘积矩阵 InitMatrix0 InitMatrix0 MatrixMul AMatrixMul A 的转置与的转置与 b b 的乘积的乘积 DestroyMatrix DestroyMatrix 释放释放 A A 的转置的内存的转置的内存 MatrixMatrix TranA A b TranA A b 定义增广矩阵定义增广矩阵 InitMatrix0 InitMatrix0 增广矩阵赋值增广矩阵赋值 for i 0 i TranA A b m i for i 0 i TranA A b m i for j 0 j TranA A b m j for j 0 j TranA A b m j TranA A b pm i j TranA A pm i j TranA A b pm i j TranA A pm i j TranA A b pm i TranA A b m TranA b
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 46385.24-2025光路板第2-4部分:基本试验和测量程序不带输入/输出尾纤光路板的光传输试验
- 保姆聘用合同(背景核查·健康版)
- 【综合素养】2025-2026学年三年级科学上学期综合能力测评卷(教科版)
- 2026-2031年中国两轮车用氢燃料电池系统市场调研分析及投资战略研究报告
- 2026年陕西省选调生招录备考题库(面向中山大学)含答案详解(满分必刷)
- 2025中国邮政储蓄银行江苏省分行社会招聘备考题库及答案详解参考
- 2025西藏拉萨市总工会招聘工会社会工作者30人备考题库有完整答案详解
- 2025云南迪庆州香格里拉市公安局招聘警务辅助人员11人备考题库及答案详解(考点梳理)
- 2025贵州黔西南州平塘县面向社会招聘城市社区工作者3人备考题库参考答案详解
- 2025贵州黔南州三都水族自治县选聘城市社区工作者14人备考题库附答案详解(a卷)
- 基于数字孪生的医疗设备健康监测与预警系统案例
- 8《美丽文字 民族瑰宝》 第一课时 公开课一等奖创新教案
- 安装空调安装协议书
- DB43T1027-2015 近自然森林可持续经营技术规程
- 核电站工程施工设计方案
- 《以平和的心态迎接期末考试》班会课件
- 小班冬季疾病预防
- 2025年公司搬迁方案计划
- 按键精灵脚本编写方法
- 校服购销合同
- 第二单元我们自己(复习课件)一年级科学上学期期末复习(教科版2024秋)
评论
0/150
提交评论