雅克比迭代算法
来源:互联网 发布:软件开发制作 编辑:程序博客网 时间:2024/05/02 04:33
#include <iostream>
#include <string>
#include <vector>
#include <iomanip>
using namespace std;
const int n=3; //设置方程组的维
float a[n][n],x[n],b[n];
void input_data() //输入方程组的相关数据
{
cout<<"输入方程组的系数矩阵a["<<n<<"]["<<n<<"]:"<<endl;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
cin>>a[i][j];
cout<<"输入x[1,...,"<<n<<"]的初值:"<<endl;
for(i=0;i<n;i++)
cin>>x[i];
cout<<"输入b[1,...,"<<n<<"]的初值:"<<endl;
for(i=0;i<n;i++)
cin>>b[i];
}
void output_equation() //输出方程组
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(j>0&&a[i][j]>0)
cout<<"+";
cout<<a[i][j]<<" x["<<j+1<<"] ";
}
cout<<"="<<b[i]<<endl;
}
}
void main ()
{
input_data();
int counter; //设置计算时迭代的次数
cout<<"输入迭代的次数"<<endl;
cin>>counter;
system("cls");
output_equation();
int k=0,i=0; //k用来统计迭代的次数;i用来表示x的序列
float m_num1; //m_x用来保存x的原先值;m_num1用来计算j!=i的数据之和
cout<<endl;
cout<<"k/t";
for(int j=0;j<n;j++)
cout<<"x["<<j+1<<"]/t/t/t";
cout<<endl;
cout<<k<<"/t";
k++;
cout << setiosflags(ios::fixed); //和下一句结合起来用来设定小数位的位数
cout << setprecision(10);
float x_next[n];
for(j=0;j<n;j++)
{
cout<<x[j]<<"/t/t";
}
cout<<endl;
do
{
m_num1=0;
for(j=0;j<n;j++)
{
if(j!=i)
m_num1=m_num1+a[i][j]*x[j];
}
x_next[i]=(b[i]-m_num1)/a[i][i];
if(i<n-1)
i++;
else
{
for(j=0;j<n;j++)
x[j]=x_next[j];
cout<<k<<"/t";
for(j=0;j<n;j++)
cout<<x[j]<<"/t/t";
cout<<endl;
i=0;
k++;
};
}while(k<=counter);
}
- 雅克比迭代算法
- 雅克比迭代
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔 (转帖)
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- 迭代算法 JAVA
- 迭代算法 JAVA
- jacobi迭代算法
- MySQL中文化问题
- Microsoft Patching Internals
- 我的一点自学心得[摘]
- Symbian应用程序UI架构的设计方法
- 学编程的人不能不看的好文章[摘]
- 雅克比迭代算法
- SCIM架构的缺陷
- 设计模式之Proxy(代理)
- 高斯-塞德尔迭代算法
- VC入门的一条路[摘]
- 清除系统的小工具
- Reverse-Engineering Malware
- 在校园里,我们埋葬了青葱岁月
- C/C++ 程序设计员应聘常见面试试题深入剖析