在写程序之前需要完成矩阵的输入操作,在这个地方我们是通过在txt文件上对矩阵输入,创建一个txt文件并且输入下面的内容:

-------------------------------------------------------

%矩阵行数:
5
%矩阵列数:
6
%矩阵的元素:
2 1 0 0 0 1
1 4 1 0 0 -2
0 1 4 1 0 2
0 0 1 4 1 -2
0 0 0 1 2 1

--------------------------------------------------------

1.注意的是矩阵式增广矩阵

2.矩阵的行数和列数也是对增广矩阵的描述

源程序:

//追赶法求解矩阵
#include<stdio.h>
#include<iostream>
using namespace std;
void zhugan();
int main()
{
    zhugan();
return 0;
}
void zhugan()
{
FILE *stream=fopen("data2.txt","r");
float Mar[50][50];
int row,col;
char msg[50];
fscanf(stream,"%s",msg);
cout<<msg<<endl;
fscanf(stream,"%d",&row);
cout<<row<<endl;
fscanf(stream,"%s",msg);
cout<<msg<<endl;
fscanf(stream,"%d",&col);
cout<<col<<endl;
fscanf(stream,"%s",msg);
cout<<msg<<endl;
for(int i=0;i<row;i++)
{
for(int j=0;j<col;j++)
{
fscanf(stream,"%f",&Mar[i][j]);
cout<<Mar[i][j]<<"  ";
}
cout<<endl;
}
fclose(stream);
cout<<"------------------------------"<<endl;
//对元素进行追赶法求解
float gk=-Mar[0+1][0]/Mar[0][0];
Mar[0+1][0]=Mar[0+1][0]+Mar[0][0]*gk;
Mar[1][1]=Mar[1][1]+Mar[0][1]*gk;
Mar[1][col-1]=Mar[1][col-1]+Mar[0][col-1]*gk;
int j1=1;
for(int i1=1;i1<row;i1++)
{
   gk=-Mar[i1+1][j1]*1.0/Mar[i1][j1];
Mar[i1+1][j1+1]=Mar[i1+1][j1+1]+Mar[i1][j1+1]*gk;
Mar[i1+1][j1]=Mar[i1+1][j1]+Mar[i1][j1]*gk;
if(Mar[i1+1][j1]<0.00001)
{
Mar[i1+1][j1]=0;
}
Mar[i1+1][col-1]=Mar[i1+1][col-1]+Mar[i1][col-1]*gk;
  j1++;
}
for(int i2=0;i2<row;i2++)
{
for(int j2=0;j2<col;j2++)
{
cout<<Mar[i2][j2]<<"  ";
}
cout<<endl;
}
float X[50];
X[0]=Mar[row-1][col-1]*1.0/Mar[row-1][col-2];
int k=1;
for(int i3=row-2;i3>=0;i3--)
{
X[k]=(Mar[i3][col-1]-Mar[i3][col-1-k]*X[k-1])/Mar[i3][col-2-k];
k++;
}
cout<<"-----------------------------"<<endl;
    //对x的值进行排序
    float XX[50];
for(int k1=0;k1<row;k1++)
{
XX[k1]=X[row-1-k1];
}
cout<<"利用追赶法求出解为:"<<endl;
for(int k2=0;k2<row;k2++)
{
cout<<"X["<<k2<<"]= "<<XX[k2]<<endl;
}

}

利用追赶法来求解方程Ax=b的C++程序相关推荐

  1. 求解方程Ax=b的通用程序

    在cpp所在的文件夹中创建一个txt文件,并且将条件这个输入:%矩阵行数9%矩阵列数9%矩阵元素31 -13 0 0 0 -10 0 0 0-13 35 -9 0 -11 0 0 0 00 -9 31 ...

  2. 如何利用matlab求解方程

    如何利用matlab求解方程 1.    前言 作为三大数学软件之一,matlab在数值计算方法的能力首屈一指.求解方程是工科学习和工程计算中最基础.最常见的问题.掌握利用现代化工具求解方程的方法对于 ...

  3. 简单迭代法、牛顿法、弦割法、布洛依登法求解方程或方程组【Matlab】

    利用迭代法求解定非线性方程及方程组,使得误差不超过10^(-8).同时应用迭代加速技术,提交迭代运算效率. 此题需要用到的MATLAB代码及附录: 附录6 二分法作根的隔离 % 附录6 二分法作根的隔 ...

  4. 【MPC的前身方法二】(5.3)机器人动力学模型+反馈控制+齐次线性方程AX=B求解反作用力并优化方法

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.建立单刚体动力学模型(近似抽象模型) 二.建立单刚体模型的运动方 ...

  5. 如何用计算机求特征值特征向量,利用QR算法求解矩阵的特征值和特征向量

    利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了 ...

  6. 利用QR算法求解矩阵的特征值和特征向量

    利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了 ...

  7. 基于jupyter notebook的python编程-----利用梯度下降算法求解多元线性回归方程,并与最小二乘法求解进行精度对比

    基于jupyter notebook的python编程-----利用梯度下降算法求解多元线性回归方程,并与最小二乘法求解进行精度对比目录 一.梯度下降算法的基本原理 1.梯度下降算法的基本原理 二.题 ...

  8. 利用scikit中的遗传算法求解(整数01)约束规划实例详解教程+利用scipy.optimize求解约束规划问题

    注意标准形式 下面两个方法约束规划的一般标准形式为: 利用scikit-opt的遗传算法求解约束规划问题 先放上链接:scikit-opt网址 主要四个步骤: 下面依照此题多约束为例 可知该题有5个不 ...

  9. 卷积法求解系统的零状态响应_利用卷积可以求解系统的零状态响应..ppt

    利用卷积可以求解系统的零状态响应..ppt 注意 ? 用微积分性质 直接 例2-7-2 图(a)系统由三个子系统构成,已知各子系统的冲激响应 如图(b)所示.求复合系统的冲激响应 ,并画出它的波形. ...

最新文章

  1. MySQL参数优化辅助工具_mysqltuner.pl
  2. Docker+mysql
  3. 【Mysql Docker】备份 docker mysql 脚本
  4. LeetCode 257 二叉树的所有路径
  5. java 百分比怎么比较_这88道阿里高级岗面试题,刷掉了80%以上的Java程序员
  6. autoreleasepool底层探索
  7. PatchGAN:Image-to-Image Translation with Conditional Adversarial Networks
  8. 使用jQuery实现一个类似GridView的编辑,更新,取消和删除的功能
  9. 一个人独立完成一个网站上线的前前后后
  10. Excel如何实现下拉选项 二级下拉框 数据联动
  11. 使用OpenCV,Python和dlib进行眨眼检测
  12. 京东云主机使用-搭建简单网页(macOS)
  13. 华为交换机/华三交换机 查看光口模块信息
  14. Oracle时间以半小时为单位取整
  15. windows在此计算机上找不到系统映象,笔记本电脑没有系统映像怎么办
  16. 模拟不同系统不同浏览器
  17. (干货)微信小程序项目——泡泡云音乐day2
  18. SPA(单页面应用)、路由模式
  19. 微信公众号添加word文档附件教程_公众号添加Excel、PDF、PPT等附件教程
  20. Mysql动态sql之mybatis动态sql

热门文章

  1. March Library 版本更新
  2. 分布式缓存,就该这样设计!
  3. 技术架构的战略和战术原则
  4. 14 个经典的 Linux 终端命令行,这些工具堪称神器!
  5. 从入职快手3年股票3000w说起
  6. 字节跳动新员工入职一周,工作很少,每天很闲,从不加班!公司一堆漂亮小姐姐!完全不像外面说得那么忙!...
  7. URL 去重的 6 种方案!(附详细代码)
  8. 一口气说出 过滤器 和 拦截器 6个区别,别再傻傻分不清了
  9. 全民捡破烂,转转和闲鱼谁能胜出?
  10. 面试官:连框架都没用熟练,就这还来面试?