[[soustava]]
 
// soustava.cpp 
 
#include "stdafx.h"
 
#include <iostream>
#include <string>
using namespace std;
 
const int R = 3;
const int S = 3;
 
double a[R][S] = { { 3, 1, 0 },
                   { 1, 0, 2 },
                   { 1, 1, 1 } };
 
double b[R]   = { 11,
                  5,
                  6 };
 
string jmena[S] = { "x", "y", "z" };
 
void print ()
{
    for (int i = 0; i < R; i++)
    {
        for (int j = 0; j < S; j++)
        {
            if (a[i][j] >= 0 && j > 0) cout << "+";
            cout << a[i][j] << "*" << jmena[j];
        }
        cout << " = " << b[i] << endl;
    }
    cout << endl;
}
 
void uprav (int r, int s)
{
    double q = a[r][s];
    for (int j = 0; j < S; j++)
    {
        a[r][j] = a[r][j] / q;
    }
    b[r] = b[r] / q;
    // print ();
    for (int i = 0; i < R; i++)
    {
        if (i != r)
        {
            double p = a[i][s];
            for (int j = 0; j < S; j++)
            {
                a[i][j] = a[i][j] - p*a[r][j];
            }
            b[i] = b[i] - p*b[r];
        }
    }
}
 
 
double v[S] = { 10, 5, 15 };
 
int main()
{
    for (int i = 0; i < R; i++)
    {
        double s = 0;
        for (int j = 0; j < S; j++)
            s = s + a[i][j] * v[j];
        b[i] = s;
    }
 
    print ();
    for (int k = 0; k < R; k++)
    {
        uprav (k, k);
        print ();
    }
    system ("pause");
    return 0;
}
 
soustava.txt · Last modified: 2017/12/19 12:32 by 147.32.8.110
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki