您当前的位置:首页 > 计算机 > 编程开发 > C语言

C语言 雅克比迭代法

时间:12-14来源:作者:点击数:
CDSY,CDSY.XYZ

C语言 雅克比迭代法

#include"stdio.h"
#include"math.h"
#define N 3
#define M 27
void main()
{
    int i,j,k=1;
    float a[N][N],b[N],sum,x[N];
    printf("请按行输入原增广矩阵:\n");
    for(i=0;i<N;i++)
    {
        for(j=0;j<N;j++)
        {
            scanf("%f",&a[i][j]);
        }
        scanf("%f",&b[i]);
    }
    printf("你输入的增广矩阵为:\n");
    for(i=0;i<N;i++)
    {
        for(j=0;j<N;j++)
        {
            printf("%f ",a[i][j]);
        }
        printf("%f \n",b[i]);
    }
    for(i=0;i<N;i++)
    {
        x[i]=0;
    }
    while(k<=M)
    {
        printf("第%d次迭代的结果为:\n",k++);
        for(i=0;i<N;i++)
        {
            sum=0;
            for(j=0;j<N;j++)
            {
                sum=sum+a[i][j]*x[j];
            }
            x[i]=x[i]+(b[i]-sum)/a[i][i];
            printf("x(%d)=%f\n",i+1,x[i]);
        }
        printf("\n");
    }
}
 
CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐