Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика. Практикум

.pdf
Скачиваний:
1
Добавлен:
24.11.2025
Размер:
5.18 Mб
Скачать

A

(

1)

3 1

4

3

 

 

4 5

4 3

8 ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

4

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

(

1)

3

2

 

 

3

 

 

 

 

(7 5

 

6 3)

17 ;

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

32

 

 

 

 

 

6

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

(

1)

3

3

 

 

 

7 4

6 4

4 .

 

 

 

 

 

 

 

 

 

 

 

7 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

33

 

 

 

 

 

6 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

50 - 46

8

Шаг 4. Построить обратную матрицу: A–1 =

 

- 40

58 -17 .

 

 

 

106

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- 28

30

4

Шаг 5. Вычислить вектор корней системы уравнений:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

50 - 46

8

12

 

 

 

 

 

 

 

 

X = A–1

C =

 

- 40 58 -17

6 =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106

- 28

30

 

4

-1

 

 

 

 

 

 

 

 

 

50 12

 

 

46 6

 

8 (

1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106

 

 

 

 

106

 

 

106

 

 

 

2,98

 

 

 

 

 

 

 

 

40 12

58 6

 

17 (

 

1)

 

 

 

 

 

 

 

=

 

 

 

 

-1,08 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106

 

 

 

106

 

106

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-1,51

 

 

 

 

 

 

 

28 12

 

30 6

 

4 (

1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106

 

 

 

106

 

106

 

 

 

 

 

 

 

 

 

Таким образом, корни системы уравнений: x1 = 2,98; x2 = –1,08; x3 = – 1,51.

П 2.1.2. Метод Крамера

Суть метода Крамера заключается в вычислении корней системы уравнений с помощью формул Крамера. В этих формулах используются значения главного определителя матрицы коэффициентов системы уравнений и вспомогательных определителей, получаемых из матрицы коэффициентов заменой одного из столбцов столбцом

361

свободных членов. В зависимости от значений главного и вспомогательных определителей возможны следующие ситуации:

если главный определитель системы отличен от нуля, то система имеет единственное решение;

если главный и вспомогательные определители равны нулю, то система имеет бесконечное множество решений;

если главный определитель равен нулю и имеется хотя бы один отличный от нуля вспомогательный определитель, то система несовместна, т. е. не имеет решения.

Пусть дана система из n уравнений с n неизвестными:

a11x1

a12 x2

...

a1n xn

c1,

 

a21x1

a22 x2

...

a2n xn

c2 ,

 

...

 

 

 

 

 

an1x1

an2 x2

...

ann xn

cn .

 

 

 

 

 

a11 a12 ... a1n

 

Составим матрицу коэффициентов А =

a21 a22 ... a2n

;

 

 

 

...

 

 

 

 

 

an1 an2 ... ann

 

 

 

c1

 

 

 

матрицу свободных членов С =

c2

;

 

 

...

 

 

 

 

 

 

 

cn

 

 

x1

матрицу корней системы уравнений X =

x2

...

 

xn

и запишем систему уравнений в матричном виде: A X = С.

Если определитель матрицы системы уравнений не равен нулю, то система имеет единственное решение и это решение находится по формулам Крамера:

362

xi i ,

где ∆ – определитель матрицы коэффициентов А;

i – определитель матрицы, получаемой из матрицы А заменой i-го столбца столбцом свободных членов С:

a11 a12 ... a1i

1

c1

a1i 1 ... a1n

 

a21 a22 ... a2i

1 c2

a2i

1 ... a2n

.

...

 

 

 

 

 

an1 an2 ... ani

1

cn

ani

1 ... ann

 

Пошаговый алгоритм решения системы уравнений

Шаг 1. Сформировать матрицу коэффициентов и вектор свободных членов системы уравнений.

Шаг 2. Вычислить определитель ∆ матрицы коэффициентов системы уравнений. Если он не равен нулю, значит, система имеет решение.

Шаг 3. Вычислить первый корень системы уравнений:

сформировать промежуточную матрицу из исходной матрицы коэффициентов А заменой первого столбца столбцом свободных членов С;

вычислить определитель промежуточной матрицы ∆1;

вычислить первый корень x1 1 .

Шаг 4. Вычислить остальные корни системы аналогично шагу 3.

Пример решения системы линейных уравнений методом Крамера Постановка задачи. Решить систему линейных уравнений

7x1 4x2 3x3 12; 6x1 4x2 5x3 6; 4x1 2x2 10x3 1

363

с помощью метода Крамера.

Пошаговый алгоритм решения Шаг 1. Сформировать матрицы коэффициентов системы и век-

7

4

3

12

тора свободных членов: A = 6

4

5

, С = 6 .

4

- 2 10

-1

Шаг 2. Вычислить определитель матрицы А:

 

 

 

 

 

 

A

 

( 1)1 1 7

 

4 5

 

( 1)1 2 4

 

6 5

 

( 1)1 3 3

 

6 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- 2 10

 

 

 

4 10

 

 

 

4 - 2

 

 

 

 

 

7 (4 10 ( 2) 5)

4 (6 10 4 5)

3 (6 (

2) 4 4)

106.

Поскольку определитель не равен нулю, то обратная матрица существует.

Шаг 3. Вычислить первый корень системы уравнений:

– сформировать промежуточную матрицу A1 из исходной матрицы A заменой первого столбца столбцом свободных членов С:

 

 

 

 

 

 

 

12

4

3

 

 

 

 

 

 

 

 

 

 

 

 

A1 =

6

4

5

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-1 - 2 10

 

 

 

 

 

 

 

 

– вычислить определитель матрицы A1:

 

 

 

 

 

 

 

( 1)1 1

12

 

5

 

( 1)1 2 4

 

6

5

 

( 1)1 3

3

 

6

4

 

 

4

 

 

 

 

 

1

- 2 10

 

 

-1 10

 

 

-1- 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12 (4 10 (

2) 5)

4 (6 10

(

1) 5)

3 (6 ( 2)

( 1)

4) 316;

364

316

– вычислить корень x1 2,98 . 106

Шаг 4. Вычислить второй корень системы уравнений:

– сформировать промежуточную матрицу A2 из исходной матрицы A заменой второго столбца столбцом свободных членов С:

7 12 3 A2 = 6 6 5 ;

4-1 10

вычислить определитель матрицы A2:

 

( 1)1 1

7

6

5

( 1)1 2 12

6

5

( 1)1 3 3

 

6

6

 

2

-1 10

4 10

 

4

-1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 (6 10 (

1) 5)

12 (6 10 4 5)

 

3 (6 ( 1) 4 6)

 

115;

– вычислить второй корень:

x2

115

1,08 .

 

 

 

106

 

 

Шаг 5. Вычислить третий корень системы уравнений:

– сформировать промежуточную матрицу A3 из исходной матрицы A заменой третьего столбца столбцом свободных элементов С:

7 4 12 A3 = 6 4 6 ;

4- 2 -1

вычислить определитель матрицы A3:

 

( 1)1 1

7

4

6

( 1)1 2

4

6

6

( 1)1 3 12

6

 

4

 

3

- 2 -1

4

-1

4

- 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 (4 ( 1) (

2) 6)

4 (6 ( 1)

4 6)

12 (6 ( 2) 4

4)

160;

365

– вычислить третий корень:

x3

160

1,51.

 

 

 

106

 

 

Таким образом, корни системы уравнений: x1 = 2,98; x2 = –1,08; x3 = –1,51.

П 2.1.3. Метод Гаусса

При численном решении систем линейных уравнений одним из распространенных является метод Гаусса, сущность которого сводится к поэтапному исключению неизвестных из уравнений.

Решение системы уравнений методом Гаусса возможно только в случае, если матрица коэффициентов системы уравнений невырожденная, т. е. её определитель (детерминант) не равен нулю.

Пусть необходимо решить систему линейных уравнений

a11x1

a12 x2

...

a1n xn

c1,

 

 

a21x1

a22 x2

...

a2n xn

c2

,

(П 2.1)

...

 

 

 

 

 

 

 

 

 

 

 

an1x1

an2 x2

...

ann xn

cn .

 

Пошаговый алгоритм решения

Процесс решения делится на два этапа. На первом этапе (прямой ход) последовательным исключением неизвестных составляется преобразованная эквивалентная система уравнений с треугольной матрицей коэффициентов, в которой все элементы под главной диагональю равны нулю, т. е. добиваются того, что в первом уравнении остаются все переменные, а в каждом последующем убирается по одной переменной до тех пор, пока в последнем уравнении не останется только одна переменная.

На втором этапе (обратный ход) решается полученная система уравнений. С помощью подстановок проводится последовательное вычисление неизвестных переменных. Решение начинается с по-

366

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

Шаг 1. Среди элементов aij (i, j = 1, ..., n) матрицы A необходимо выбрать главный элемент a pq , являющийся наибольшим по моду-

лю. Соответствующая строка матрицы A с номером p называется главной строкой. Главную строку необходимо поместить на место первого уравнения, для чего следует поменять местами первую строку со строкой p. Главный элемент должен находиться на месте первого коэффициента уравнения, для этого надо поменять местами первый столбец коэффициентов со столбцом q. В результате главный элемент окажется на месте элемента a11.

При написании программы необходимо запоминать информацию о старой нумерации коэффициентов и вводить новую нумерацию.

Шаг 2. Необходимо, чтобы коэффициент первого уравнения a11 был равен 1. Для этого следует разделить коэффициенты первого уравнения системы на значение a11 = apq , в результате первое уравне-

ние примет вид x1 c12 x2 .. c1n d1 , где c1 j a1 j / a11; d1 b1 / a11 . Шаг 3. Теперь следует исключить неизвестную переменную x1

из каждого уравнения исходной системы, начиная со второго. Для этого выполняются следующие действия:

1)умножая коэффициенты первого уравнения на первый коэф-

фициент второго уравнения (a12), получают преобразованное первое уравнение, которое и вычитают из второго уравнения (первое уравнение остается неизменным);

2)умножая коэффициенты первого уравнения на первый коэф-

фициент третьего уравнения (a13), получают преобразованное первое уравнение, которое вычитают из третьего уравнения (первое уравнение остается неизменным);

n–1) вычетают из n-го уравнения произведение первого уравне-

ния и первого коэффициента n-ного уравнения (a1n). В результате получают следующую систему уравнений:

367

x1 c12 x2

c13 x3

...

c1n xn

d1;

x2

c23 x3

..

c2n xn

d2 ;

x2

с23 x3

...

c3n xn

d3 ;

 

 

...

 

 

x2

с23 x3

...

cnn xn

dn .

Шаг 4. Последовательно повторяют шаги 2–3 для исключения переменных от x2 до xn–1. В результате получают систему уравнений с треугольной матрицей, эквивалентной исходной (П 2.1):

x1

c12 x2

c13x3

...

c1n xn

d1,

 

 

x2

c23x3

..

c2n xn

d2 ,

 

 

 

x3

...

c3n xn

d3 ,

(П 2.2)

 

 

 

...

 

 

 

 

 

 

 

cnn xn

dn .

 

Шаг 5. Обратный

ход.

Неизвестные переменные

x1, x2 , .., xn

определяют в обратном порядке по формулам, полученным из системы уравнений (П 2.2):

xn

dn / cnn ;

xn 1

dn 1

cn 1,n xn ;

 

 

x1 d1

c1,2 x2

.. c1,n xn .

Пример решения системы линейных уравнений методом Гаусса

Постановка задачи. Решить систему уравнений

7x1

4x2

3x3

12;

 

6x1

4x2

5x3

6;

(П 2.3)

4x1

2x2

10x3

1

 

368

методом Гаусса.

Пошаговый алгоритм решения

Прямой ход. Шаг 1. Найти максимальный коэффициент системы уравнений. В системе уравнений (П 2.3) apq = a33 = 10. Необходимо переместить максимальный коэффициент на место коэффициента a11. Для этого необходимо произвести следующие действия:

1) поменять местами первую и третью строки:

4x1 2x2 10x3 1; 6x1 4x2 5x3 6;

7x1 4x2 3x3 12;

2) поменять местами первый и третий столбцы:

10x3 2x2 4x1 1; 5x3 4x2 6x1 6; 3x3 4x2 7x1 12.

Шаг 2. Разделить коэффициенты первого уравнения (первая строка) на первый коэффициент строки (число 10):

x3

0,2x2

0,4x1

0,1;

5x3

4x2

6x1

6;

 

3x3

4x2

7x1

12.

 

Шаг 3. Исключить переменную х3

из второго и третьего уравне-

ний. Для этого произвести следующие действия.

1) Из второго уравнения вычесть произведение первого уравнения и первого коэффициента второго уравнения (число 5). Вместо

второго

уравнения

системы будет

получено уравнение

x3 (5 5)

x2 (4 0,2 5)

x1(6 0,4 5) 6

0,1 5.

После приведения подобных членов второе уравнение примет вид 5х2 4x1 6,5 .

2) Из третьего уравнения вычесть произведение первого уравнения и первого коэффициента третьего уравнения (число 3). Вместо

369

третьего

уравнения

системы будет

получено уравнение

x3 (3 3)

x2 (4 0,2 3)

x1(7 0,4 3) 12

0,1 3 .

После приведения подобных членов третье уравнение примет вид 4,6x2 5,8x1 12,3.

В результате будет получена система уравнений:

x3 0,2x2

0,4x1

0,1;

 

5x2

4x1

6,5;

(П 2.4)

4,6x2

5,8x1

12,3.

 

Шаг 4. На этом шаге будем работать со вторым и третьим уравнениями. Найти максимальный коэффициент системы уравнений (П 2.4): a33 = 5,8. Поместить коэффициент a33 на место коэффициента a21. Произвести действия, аналогичные шагу 1:

1) поменять местами вторую и третью строки: x3 0,2x2 0,4x1 0,1;

4,6x2 5,8x1 12,3;

5x2 4x1 6,5;

2) поменять местами второй и третий столбцы:

x3 0,4x1 0,2x2

0,1;

5,8x1 4,6x2 12,3;

4x1 5x2 6,5.

Шаг 5. Исключить переменную х1 из третьего уравнения. Для этого произвести следующие действия.

1) Второе уравнение разделить на значение первого коэффициента второго уравнения a21 (число 5,8):

x3 0,4x1

0,2x2

0,1;

x1

0,79x2

2,12;

4x1

5x2

6,5.

370