加列法计算lower unit matrix inversion

#include<stdio.h>

#define NA 4

int main()
{
        //下三角矩阵 lower
        float    lower[NA][NA]={
                                1,0,0,0,
                                4,1,0,0,
                                5,3,1,0,
                                6,7,6,1
                                        };
        int dia=NA;
        int i, j, n;
        //针对矩阵第一列计算逆
        for(i = 1; i < dia; i++ )
        {
                lower[i][0]=-lower[i][0];
        }
        //dia is order of lower matrix
        // 保存在原矩阵的数组中
        for(n=1;n<dia-1;n++)
        {
                for(i = n+1; i < dia; i++)
                {
                        for(j = 0; j < n; j++)
                        {
                                lower[i][j]-=lower[n][j]*lower[i][n];
                        }
                        lower[i][n]=-lower[i][n];
                }
        }

        for(i=0;i<dia;i++)
        {
                for(j=0;j<dia;j++)
                {
                        printf("%5.2f ",lower[i][j]);
                }
                printf("\n");
        }

        return 0;

}

gcc hello...c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值