Підтримка
www.wikidata.uk-ua.nina.az
Metod Yakobi klasichnij iteracijnij metod rozv yazku sistemi linijnih rivnyanOpis metoduDlya kvadratnoyi sistemi z n linijnih rivnyan A x b displaystyle A mathbf x mathbf b de A a 11 a 12 a 1 n a 21 a 22 a 2 n a n 1 a n 2 a n n x x 1 x 2 x n b b 1 b 2 b n displaystyle A begin bmatrix a 11 amp a 12 amp cdots amp a 1n a 21 amp a 22 amp cdots amp a 2n vdots amp vdots amp ddots amp vdots a n1 amp a n2 amp cdots amp a nn end bmatrix qquad mathbf x begin bmatrix x 1 x 2 vdots x n end bmatrix qquad mathbf b begin bmatrix b 1 b 2 vdots b n end bmatrix Matricyu A mozhna rozklasti na dva dodanki diagonalnu matricyu D ta vse inshe R A D R D a 11 0 0 0 a 22 0 0 0 a n n R 0 a 12 a 1 n a 21 0 a 2 n a n 1 a n 2 0 displaystyle A D R qquad D begin bmatrix a 11 amp 0 amp cdots amp 0 0 amp a 22 amp cdots amp 0 vdots amp vdots amp ddots amp vdots 0 amp 0 amp cdots amp a nn end bmatrix qquad R begin bmatrix 0 amp a 12 amp cdots amp a 1n a 21 amp 0 amp cdots amp a 2n vdots amp vdots amp ddots amp vdots a n1 amp a n2 amp cdots amp 0 end bmatrix Sistemu linijnih rivnyan mozhna perepisati v viglyadi D x b R x displaystyle D mathbf x mathbf b R mathbf x Iteracijnij metod Yakobi virazhayetsya formuloyu x k 1 D 1 b R x k displaystyle mathbf x k 1 D 1 mathbf b R mathbf x k chi x i k 1 1 a i i b i j i a i j x j k i 1 2 n displaystyle x i k 1 frac 1 a ii left b i sum j neq i a ij x j k right quad i 1 2 ldots n ZbizhnistMetod ye zbizhnim koli matricya A maye dominantnu golovnu diagonal a i i gt i j a i j displaystyle left a ii right gt sum i neq j left a ij right drugoyu umovoyu zbizhnosti ye te shob ne perevishuvav odinicyu r D 1 R lt 1 displaystyle rho D 1 R lt 1 AlgoritmRealizaciya na S include lt vector gt include lt iostream gt include lt cmath gt using namespace std void solve const vector lt float gt a kvadratna matricya const vector lt float gt b vektor vilnih elementiv vector lt float gt amp x syudi bude zapisano rozv yazok const float allowed error dopustima pohibka const unsigned n x size vector lt float gt tmp x n float error do error 0 tmp x b for unsigned i 0 i lt n i for unsigned j 0 j lt n j if i j tmp x i a i n j x j onoviti x i ta porahuvati pohibku const float x updated tmp x i a i n 1 const float e fabs x i x updated x i x updated if e gt error error e while error gt allowed error priklad vikoristannya Koristuvach vvodit vhidni dani int main unsigned n cout lt lt n Vvedit rozmir sistemi n n cin gt gt n vector lt float gt x n vector lt float gt a n n vector lt float gt b n cout lt lt n Vvedit vektor vilnih elementiv n for auto amp b elem b cin gt gt b elem cout lt lt n Vvedit koeficiyenti sistemi n for auto amp a elem a cin gt gt a elem float allowed error cout lt lt n Vvedit dopustimu pohibku n cin gt gt allowed error solve a b x allowed error cout lt lt n Rozv yazok sistemi n for unsigned i 0 i lt n i cout lt lt n x lt lt i lt lt lt lt x i Realizaciya na S include lt stdio h gt include lt stdlib h gt include lt conio h gt include lt math h gt void main int n i j count 0 float a b x tmp x exp e printf Vvedit rozmiri sistemi n printf n scanf i amp n a float malloc n sizeof float for i 0 i lt n i a i float malloc n sizeof float b float malloc n sizeof float x float malloc n sizeof float tmp x float malloc n sizeof float printf Vvedit koeficiyenti sistemi n for i 0 i lt n i for j 0 j lt n j scanf f amp a i j printf Vvedit vektor vilnih elementiv n for i 0 i lt n i scanf f amp b i x i 0 printf Vvedit tochnist obchislennya scanf f amp e do count for i 0 i lt n i tmp x i 0 0 for j 0 j lt n j if i j tmp x i tmp x i a i j x j tmp x i b i tmp x i a i i exp 0 for i 0 i lt n i if fabs x i tmp x i gt exp exp fabs x i tmp x i x i tmp x i while exp gt e free tmp x for i 0 i lt n i free a i free a free b printf Rozv yazok sistemi n for i 0 i lt n i printf x d 6f n i 1 x i free x Div takozhIteracijni metodi rozv yazuvannya SLAR Metod Gausa ZejdelyaDzherelaGantmaher F R Teoriya matric 5 e M Fizmatlit 2010 559 s ISBN 5 9221 0524 8 ros
Топ