Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Алгоритм метода.

1. Заполнить таблицу Джордана-Гауса.

2. Дополнить таблицу столбцами Ain+1, где Ain+1=∑Aij, i=1,m/

3. Выбрать среди коэффициентов при неизвестных элементах элемент Apq≠0. Этот элемент называется не разрешающим.

4. В новую таблицу Джордана-Гауса записать в p-тую строку (разрешающую) элементы, которые вычисляются по правилу:

A'pj j=0,n+1

5. Провести контроль вычислений. Для этого вычислить сумму элементов. Если указанные две величины в этом столбце совпадают, то вычисления произведены верно. В противном случае повторить пункт 4.

6. Преобразовать построчно оставшиеся элементы таблицы по формулам:

A'ij=aij - i=1,m; i≠p; j=1,n+1

Главная диагональ – это диагональ, которая соединяет старый элемент

и разрешающий элемент. Соответственно противоположная диагональ

называется побочной.

7. После преобразования элементов строки осуществлять контроль аналогичный контролю из пункта 5. Пункты 3-7 образуют одну итеррацию метода.

8. После проведения нескольких итераций может реализоваться один из следующих случаев: а)в k-той строке таблице во всех столбцах

получены нули.

б)в k-той строке таблице в столбцах с первого по

n-ый получены нули, а в столбце Ai0 получен

элемент отличный от нуля (Ak0≠0).

Случай (а) может наступить, если k-тое уравнение системы является линейной комбинацией остальных уравнений системы. Решение следует продолжить.

Случай (б) может наступить при несовместимости системы уравнений, т. к. в k-той строке получено уравнение:

НЕ нашли? Не то? Что вы ищете?

0x1+0x2+…+0xn=Ak0, где Ak0≠0

Это уравнение не имеет решений не при каких значениях x. Решение

системы закончить.

9. Начинается новая итерация (разложение по новому базису). В начале

i-той итеррции следует выбрать элемент Apiqi≠0 из строки, которая до этого не была разрешающей, т. е. PiP1, PiPi-1.

10. Повторять пункты 3-9 до тех пор, пока можно будет выбирать

разрешающий элемент Apiqi≠0 с учётом правила выбора из пункта 9.

Очевидно, что максимальное число итераций равно m (числу

уравнений), но если реализовался пункт 8, то числа итерраций будет

меньше.

11. После проведения всех итеррций выписать систему уравнений

соответствующих последней таблицы. Переменные xj, которые содержатся только в одном уравнении полученной системы, называются базисными переменными, а остальные – свободными. Свободные переменные есть только в том случае, если m < n. Общим решением системы для систем, у которых ранг меньше чем n называется такое решение, из которого может быть получено любое частное решение системы. Для того чтобы записать общее решение системы необходимо свободные переменные перенести в правые части всех уравнений полученной системы.

Текст программы.

#include<iostream. h>

#include<conio. h>

void main()

{

double massiv[5][7];

double M[5];

int i, j;

for(i=0;i<5;i++)

{

cout<<"\n Vvedite koeficientu dlya "<<i+1<<" - go yravneniya: ";

for(j=0;j<5;j++)

cin>>massiv[i][j];

}

for(i=0;i<5;i++)

{

cout<<"\n Vvedite dlya "<<i+1<<" - go yravneniya: ";

cin>>massiv[i][5];

}

for(i=0;i<5;i++)

{

M[i]=0;

for(j=0;j<6;j++)

M[i]=M[i]+massiv[i][j];

}

for(i=0;i<5;i++)

massiv[i][6]=M[i];

cout<<"\n ";

for(i=0;i<5;i++)

{

cout<<"\n ";

for(j=0;j<7;j++)

cout<<massiv[i][j]<<" ";

}

double buffer;

buffer=massiv[0][0];

for(j=0;j<7;j++)

massiv[0][j]=massiv[0][j]/buffer;

for(i=1;i<5;i++)

{

for(j=1;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[0][j]*massiv[i][0])/massiv[0][0]);

}

for(i=1;i<5;i++)

massiv[i][0]=0;

double A[7];

for(j=0;j<7;j++)

{

A[j]=massiv[1][j];

massiv[1][j]=massiv[4][j];

massiv[4][j]=A[j];

}

buffer=massiv[1][1];

for(j=1;j<7;j++)

massiv[1][j]=massiv[1][j]/buffer;

for(j=2;j<7;j++)

massiv[0][j]=massiv[0][j]-((massiv[0][1]*massiv[0][j])/massiv[1][1]);

for(i=2;i<5;i++)

for(j=2;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[1][j]*massiv[i][1])/massiv[1][1]);

massiv[0][1]=0;

for(i=2;i<5;i++)

massiv[i][1]=0;

buffer=massiv[2][2];

for(j=2;j<7;j++)

massiv[2][j]=massiv[2][j]/buffer;

for(i=0;i<2;i++)

for(j=3;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[i][2]*massiv[2][j])/massiv[2][2]);

for(i=3;i<5;i++)

for(j=3;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[2][j]*massiv[i][2])/massiv[2][2]);

for(i=0;i<2;i++)

massiv[i][2]=0;

for(i=3;i<5;i++)

massiv[i][2]=0;

buffer=massiv[3][3];

for(j=3;j<7;j++)

massiv[3][j]=massiv[3][j]/buffer;

for(i=0;i<3;i++)

for(j=4;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[i][3]*massiv[3][j])/massiv[3][3]);

for(j=4;j<7;j++)

massiv[4][j]=massiv[4][j]-((massiv[3][j]*massiv[4][3])/massiv[3][3]);

for(i=0;i<3;i++)

massiv[i][3]=0; massiv[4][3]=0;

buffer=massiv[4][4];

for(j=4;j<7;j++)

massiv[4][j]=massiv[4][j]/buffer;

for(i=0;i<4;i++)

for(j=5;j<7;j++)

massiv[i][j]=massiv[i][j]-((massiv[i][4]*massiv[4][j])/massiv[4][4]);

for(i=0; i<4;i++)

massiv[i][4]=0;

cout<<"\n ";

for(i=0;i<5;i++)

{

cout<<"\n ";

for(j=0;j<7;j++)

cout<<massiv[i][j]<<" ";

}

getch();

}