C++ Bc. 32: Porovnání verzí

Z GeoWikiCZ
m (uprava definice indexu v sumaci)
(zjednodusena verze tridy chyba)
 
(Nejsou zobrazeny 2 mezilehlé verze od jednoho dalšího uživatele.)
Řádek 1: Řádek 1:
Napište funkci <tt>reseni()</tt>, která pro zadanou dolní trojúhelníkovou matici <math>\mathbf T</math> a vektor <math>\mathbf b</math> vypočte řešení soustavy lineárních rovnic <math>\mathbf {T x  = b.}</math> Funkce <tt>reseni()</tt> přepisuje vstupní vektor (pravou stranu) vypočteným řešením <math>x</math> a testuje všechny možné chyby (nepřípustné dimenze a nulu na hlavní diagonále).  
;Řešení soustavy lineárních rovnic
 
Napište funkci <tt>reseni()</tt>, která pro zadanou dolní trojúhelníkovou matici <math>\mathbf T</math> a vektor <math>\mathbf b</math> vypočte řešení soustavy lineárních rovnic <math>\mathbf {T x  = b}</math>. Funkce <tt>reseni()</tt> přepisuje vstupní vektor (pravou stranu) vypočteným řešením <math>x</math> a testuje všechny možné chyby (nepřípustné dimenze a nulu na hlavní diagonále).  


  struct Chyba
  struct Chyba
  {
  {
     template <typename T> Chyba(T t) : text(t) {}
     Chyba(std::string t) : text(t) {}
   
   
     std::string text;
     std::string text;
Řádek 24: Řádek 26:
\end{pmatrix}
\end{pmatrix}
</math>  
</math>  


'''Řešení (přímá substituce):'''
'''Řešení (přímá substituce):'''
Řádek 35: Řádek 36:


<math>x_{k} = (b_{k} - \sum^{k-1}_{j=1} t_{k,j}x_{j})/t_{k,k}\,</math>
<math>x_{k} = (b_{k} - \sum^{k-1}_{j=1} t_{k,j}x_{j})/t_{k,k}\,</math>


'''Příklad:'''
'''Příklad:'''
Řádek 54: Řádek 54:
\end{pmatrix}\qquad
\end{pmatrix}\qquad
</math>
</math>


[ [[C++ Bc.|Zpět]] | [[C++ Bc. 32 cpp |C++]] | [[C++ Bc. 33|Další]] ]
[ [[C++ Bc.|Zpět]] | [[C++ Bc. 32 cpp |C++]] | [[C++ Bc. 33|Další]] ]


[[Kategorie:Programování]]
[[Kategorie:Programování]]

Aktuální verze z 8. 12. 2006, 15:43

Řešení soustavy lineárních rovnic

Napište funkci reseni(), která pro zadanou dolní trojúhelníkovou matici a vektor vypočte řešení soustavy lineárních rovnic . Funkce reseni() přepisuje vstupní vektor (pravou stranu) vypočteným řešením a testuje všechny možné chyby (nepřípustné dimenze a nulu na hlavní diagonále).

struct Chyba
{
   Chyba(std::string t) : text(t) {}

   std::string text;
};

void reseni(const GNU_gama::Mat<>& U, GNU_gama::Vec<>& x);

V dolní trojúhelníkové matici jsou všechny prvky nad hlavní diagonalou nulové, všechny prvky na hlavní diagonále jsou nenulové.

Řešení (přímá substituce):

Příklad:

[ Zpět | C++ | Další ]