Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Прямі методи розв'язування систем лінійних алгебраїчних рівнянь

Реферат Прямі методи розв'язування систем лінійних алгебраїчних рівнянь





>

Виносимо елемент за знак визначника



зануляется всі елементи першого стовпчика за винятком першого елемента.



Нехай пророблений (k - 1) крок:


де.

Якщо то й крок

. 1.


Якщо .2. Якщо, міняємо місцями k-ю і рядки.


. 3. Якщо міняємо і k-й стовпці.




Виносимо елемент за знак визначника



зануляется всі елементи k-го стовпця починаючи з (k + 1) -го елемента.


й крок:


.


Метод Гаусса з вибором головного або провідного елементу матриці в рядку

Розглянемо k-й крок:


k.1.

Якщо



k.2. Див. Попередній метод..3. Див. Попередній метод..4. Див. Попередній метод..5. Див. Попередній метод.

Метод Гаусса з вибором головного або провідного елементу матриці в стовпці

Розглянемо k-й крок:


k.1.

Якщо

. 2. Див. Попередній метод..3. Див. Попередній метод..4. Див. Попередній метод..5. Див. Попередній метод.

Лістинг програми


# include stdafx.h

# include lt; iomanip gt;

# include lt; iostream gt;

# include lt; math.h gt; namespace std; int n=4; Print (double array [n] [n])

{(int i=0; i lt; n; i ++)

{(int j=0; j lt; n; j ++)

{(% .4f , array [i] [j], );

} lt; lt; endl;

}

} buldMatrA (double A [n] [n])

{(int i=0; i lt; n; i ++)

{(int j=0; j lt; n; j ++)

{

A [0] [0]=0.11; [0] [1]=- 0.17; [0] [2]=0.72; [0] [3]=- 0.34; [1] [0]=0.81; [1] [1]=0.12; [1] [2]=- 0.91; [1] [3]=0.17; [2] [0]=0.17; [2] [1]= - 0.18; [2] [2]=1; [2] [3]=0.28; [3] [0]=0.13; [3] [1]=0.17; [3] [2]=- 0.99; [ 3] [3]=0.35;

}

}

} Gauss_Matr (double A [n] [n], double f [n])

{P [n]; (int i=0; i lt; n; i ++) [i]=i; max=- 1; line=0, column=0; d, x [ n], r [n], Ax [n];

double A_1 [n] [n + 1];//створюємо розширену матрицю

for (int i=0; i lt; n; i ++)

{(int j=0; j lt; n; j ++)

{_ 1 [i] [j]=A [i] [j];

} _ 1 [i] [n]=f [i];

} lt; lt; endl; lt; lt; This is a matrix A_1 [n] [n + 1] lt; lt; endl; (int i=0; i lt; n; i ++)

{(int j=0; j lt; n + 1; j ++)

{(% .4f raquo ;, A_1 [i] [j], );

} lt; lt; endl;

} (int k=0; k lt; n; k ++)

{= fabs (A_1 [k] [k]);=k;=k; (int i=k; i lt; n; i ++)

{(int j=k; j lt; n; j ++)

{(fabs (A_1 [i] [j]) gt; max)

{= fabs (A_1 [i] [j]);

line=i;//знаходження макс елемента і його позиції=j;

}

}

} (line!=k)//міняємо рядки місцями

{(int j=k; j lt; n + 1; j ++)

{(A_1 [k] [j], A_1 [line] [j]);

}

} (column!=k)//міняємо стовпці місцями

{(int i=0; i lt; n; i ++)

{(A_1 [i] [k], A_1 [i] [column]);

} (P [k], P [column]);

}=A_1 [k] [k]; (int j=k; j lt; n + 1; j ++)//поділ к-го рядка на макс елемент

{_ 1 [k] [j]=(double) A_1 [k] [j]/d;

} (int i=0; i lt; n; i ++)

{(i!=k)

{= A_1 [i] [k]; (int j=k; j lt; n + 1; j ++)

{_ 1 [i] [j] -=d * A_1 [k] [j];

}

}

}

} lt; lt; endl; (int i=0; i lt; n; i ++)

{[P [i]]=A_1 [i] [n];

} lt; lt; Root lt; lt; endl; (int i=0; i lt; n; i ++)

{(% .4f raquo ;, x [i], ); lt; lt; endl;

} (A); lt; lt; endl; (int i=0; i lt; n; i ++)

{s=0; (int j=0; j lt; n; j ++)

{+=A [i] [j] * x [j];

} [i]=s; [i]=Ax [i] -f [i];

} lt; lt; Nevazka lt; lt; endl; (int i=0; i lt; n; i ++)

{(% 1.17f...


Назад | сторінка 3 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Порівняння ефективності різних методів розв'язання систем лінійних алге ...
  • Реферат на тему: Метод Гаусса розв'язання систем лінійних алгебраїчних рівнянь
  • Реферат на тему: Метод Ньютона (метод дотичних). Рішення систем нелінійних алгебраїчних рів ...
  • Реферат на тему: Рішення систем нелінійніх рівнянь. Метод ітерацій. Метод Ньютона-Канторов ...
  • Реферат на тему: Графічний метод і симплекс-метод розв'язання задач лінійного програмува ...