Cod sursa(job #2079897)

Utilizator triscacezarTrisca Vicol Cezar triscacezar Data 1 decembrie 2017 23:04:59
Problema Algoritmul lui Gauss Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.9 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("gauss.in");
ofstream g("gauss.out");
int n,m,i,j,k;
double a[310][310];
int main()
{
    f>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m+1;j++)
            f>>a[i][j];
    for(i=1;i<=n;i++)
        if(a[i][i]==0)
            for(j=1;j<=n;j++)
                a[j][i]=0;
        else
            for(j=1;j<=n;j++)
                if(i!=j)
                {
                    double x=a[j][i]/a[i][i];
                    for(k=1;k<=m+1;k++)
                        a[j][k]-=a[i][k]*x;
                }
    for(i=1;i<=n;i++)
        if(!a[i][i])
            if(!a[i][m+1])
            {
                g<< "Imposibil";
                return 0;
            }
    for(i=1;i<=n;i++)
        if(a[i][i])
            g<<fixed<<setprecision(10)<<a[i][m+1]/a[i][i]<<' ';
        else
            g<<"0 ";
    return 0;
}