ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… алгСбраичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ суммы считаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ 0, Ссли Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΏΡ€Π΅Π΄Π΅Π» суммирования мСньшС Π½ΠΈΠΆΠ½Π΅Π³ΠΎ. Π’ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈ i=1 ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄: (3). Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π―ΠΊΠΎΠ±ΠΈ исходят ΠΈΠ· Π·Π°ΠΏΠΈΡΠΈ систСмы Π² Π²ΠΈΠ΄Π΅ (2), ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ этом ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, (n=0, 1, …, n0, i=1, 2, …, m) (4). БущСствуСт сиcΡ‚Π΅ΠΌΠ° AΒ· x = f (1), Π³Π΄Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A = (i, j = 1, 2, …m) ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ; x = (x1, x2, x3,… xm) — Π²Π΅ΠΊΡ‚ΠΎΡ€ нСизвСстных, f… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… алгСбраичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Данная курсовая Ρ€Π°Π±ΠΎΡ‚Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ Ρ‚Ρ€ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… алгСбраичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ (БЛАУ):

1. ΠœΠ΅Ρ‚ΠΎΠ΄ Π―ΠΊΠΎΠ±ΠΈ (ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ).

2. ΠœΠ΅Ρ‚ΠΎΠ΄ Π₯ΠΎΠ»Π΅Ρ†ΠΊΠΎΠ³ΠΎ.

3. ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ рСлаксации.

Π’Π°ΠΊΠΆΠ΅ данная курсовая Ρ€Π°Π±ΠΎΡ‚Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ: описаниС ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ (Π°Π½Π°Π»ΠΈΠ·), ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ программирования Borland C++ Builder 6.

ОписаниС ΠΌΠ΅Ρ‚ΠΎΠ΄Π°

ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ, Ссли Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ. ОсновноС достоинство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ искомого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ задаСтся. Число ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ для получСния Π·Π°Π΄Π°Π½Π½ΠΎΠΉ точности, являСтся основной ΠΎΡ†Π΅Π½ΠΊΠΎΠΉ качСства ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. По ΡΡ‚ΠΎΠΌΡƒ числу проводится сравнСниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

Π“Π»Π°Π²Π½Ρ‹ΠΌ нСдостатком этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ вопрос сходимости ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ процСсса Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ исслСдования. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² слуТат: ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ (ΠΌΠ΅Ρ‚ΠΎΠ΄ Π―ΠΊΠΎΠ±ΠΈ), ΠΌΠ΅Ρ‚ΠΎΠ΄ ЗСйдСля, ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½ΠΈΡ… рСлаксаций.

НачнСм с ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π΅Ρ‰Ρ‘ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π―ΠΊΠΎΠ±ΠΈ.

БущСствуСт сиcΡ‚Π΅ΠΌΠ° AΒ· x = f (1), Π³Π΄Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A = [aij] (i, j = 1, 2, …m) ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ; x = (x1, x2, x3,… xm) — Π²Π΅ΠΊΡ‚ΠΎΡ€ нСизвСстных, f — Π²Π΅ΠΊΡ‚ΠΎΡ€ свободных Ρ‡Π»Π΅Π½ΠΎΠ². БистСму (1) Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²ΠΈΠ΄Ρƒ: (2) i=1, 2,…, m, Π³Π΄Π΅, , ΠΏΡ€ΠΈ этом aii 0.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ суммы считаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ 0, Ссли Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΏΡ€Π΅Π΄Π΅Π» суммирования мСньшС Π½ΠΈΠΆΠ½Π΅Π³ΠΎ. Π’ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈ i=1 ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄: (3). Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π―ΠΊΠΎΠ±ΠΈ исходят ΠΈΠ· Π·Π°ΠΏΠΈΡΠΈ систСмы Π² Π²ΠΈΠ΄Π΅ (2), ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ этом ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:, (n=0, 1, …, n0, i=1, 2, …, m) (4).

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ значСния — (i=0, 1, …, m) Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ (Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΡ‹ ΡΡ‚ΠΎ ΠΏΡ€ΠΎΠ΄Π΅Π»Ρ‹Π²Π°Π΅ΠΌ, вводя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ случайных чисСл — «random»). ΠžΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ процСсса ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π»ΠΈΠ±ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ максимального числа ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ n0, Π»ΠΈΠ±ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ условиСм:, Π³Π΄Π΅ >0. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ приблиТСния Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ (4) ΠΏΡ€ΠΈΠΌΠ΅ΠΌ .

Если ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΉ x1(0), x2(0),, xm(0), x1(1), x2(1),, xm(1),…, x1(k), x2(k),, xm(k) ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π΅Π», , Ρ‚ΠΎ ΡΡ‚ΠΎΡ‚ ΠΏΡ€Π΅Π΄Π΅Π» являСтся Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ систСмы (2).

Достаточным условиСм сходимости Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСмы (1) являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A являСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ с ΠΏΡ€Π΅ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΌΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ элСмСнтами, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, i=1, 2, …, m.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ — ΠΌΠ΅Ρ‚ΠΎΠ΄ ЗСйдСля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π―ΠΊΠΎΠ±ΠΈ. Основная Π΅Π³ΠΎ идСя Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ вычислСнии (k+1) — Π³ΠΎ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΡ нСизвСстной xi ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡƒΠΆΠ΅ вычислСнныС Ρ€Π°Π½Π΅Π΅ (k+1) — Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΡ (x1 x2,, xi-1).

ΠŸΡƒΡΡ‚ΡŒ Π΄Π°Π½Π° привСдСнная линСйная систСма: (i = 1, 2, …n) (5). Π’Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ приблиТСния ΠΊΠΎΡ€Π½Π΅ΠΉ x1(0), x2(0),, xn(0), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠ΅Ρ€Π΅ соотвСтствовали нСизвСстным x1, x2, x3,, xn.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ k-Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π½Π΅ΠΉ извСстно, Ρ‚ΠΎΠ³Π΄Π° Π² ΡΠΎΠΎΡ‚вСтствии с ΠΈΠ΄Π΅Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° строится (k+1) — Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°ΠΌ:

Если выполняСтся достаточноС условиС сходимости для систСмы (5) — ΠΏΠΎ ΡΡ‚Ρ€ΠΎΠΊΠ°ΠΌ, Ρ‚ΠΎ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ ЗСйдСля Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ уравнСния (6) Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ систСмы ΠΈΠΌΠ΅Π»ΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ сумму ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ коэффициСнтов: .

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотри 3 ΠΌΠ΅Ρ‚ΠΎΠ΄ — ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½ΠΈΡ… рСлаксаций.

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ рСлаксации — это Π΅ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ ЗСйдСля с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ числовым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ w.

Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных ΠΎΠ΄Π½ΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½ΠΈΡ… рСлаксаций, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄ (7), Π³Π΄Π΅ w Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ числовой ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ (0

Достоинством ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Π΅Ρ€Ρ…Π½ΠΈΡ… рСлаксаций являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ вычислСний ΠΈΠΌΠ΅Π΅Ρ‚ простой Π²ΠΈΠ΄ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всСго ΠΎΠ΄ΠΈΠ½ массив для нСизвСстного Π²Π΅ΠΊΡ‚ΠΎΡ€Π°.

Для получСния расчСтных Ρ„ΠΎΡ€ΠΌΡƒΠ» (7) ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ Π² Π²ΠΈΠ΄Π΅: ΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΉ записи ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ (8) — это Π΅ΡΡ‚ΡŒ основная Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°.

Π’ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (8) ΠΈ Π²Ρ…одят ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ => ΠΏΡ€ΠΈ вычислСниях ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ записаны Π² ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ массив. ΠŸΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Π΅Ρ€Ρ…Π½ΠΈΡ… рСлаксаций ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° записи Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° вычислСний .

Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ элСмСнта (i+10 ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ) Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ k

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ (Π°Π½Π°Π»ΠΈΠ·)

Боставляя Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ программирования Borland C++ Builder 6 для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ БЛАУ я ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π» Ρ€Π°Π·Π½ΠΎΠ΅ количСство ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ (Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π·Π°Π΄Π°Π²Π°Π» Ρ€Π°Π²Π½Ρ‹ΠΌ nxn). Но Π΄Π»Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² использовал систСму ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ:

Π’ΠΎΠΎΠ±Ρ‰Π΅ говоря, процСсс ЗСйдСля сходится быстрСС, Ρ‡Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π―ΠΊΠΎΠ±ΠΈ. Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ процСсс ЗСйдСля сходится, ΠΊΠΎΠ³Π΄Π° простая итСрация расходится ΠΈ Ρ‚. ΠΏ. ΠŸΡ€Π°Π²Π΄Π°, Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. Π’ΠΎ Π²ΡΡΠΊΠΎΠΌ случаС, достаточныС условия сходимости для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π―ΠΊΠΎΠ±ΠΈ достаточны ΠΈ Π΄Π»Ρ сходимости ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ЗСйдСля. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ· ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° я ΡƒΠ²ΠΈΠ΄Π΅Π», Ρ‡Ρ‚ΠΎ процСсс ЗСйдСля сходится быстрСС. Π­Ρ‚ΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Ρƒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠΉ точности =0,1. Если для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π―ΠΊΠΎΠ±ΠΈ ΠΎΠ½ΠΈ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ 16, Ρ‚ΠΎ Π΄Π»Ρ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ЗСйдСля ΠΎΠ½ΠΈ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ 9.

Π’Π°ΠΊΠΆΠ΅ рассматривая ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ рСлаксации ΠΈ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ Π΅Π³ΠΎ с Π΄Π²ΡƒΠΌΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ рСлаксации количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ зависит ΠΎΡ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ числового ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° w. Задавая w=1, количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ€Π°Π²Π½ΠΎ 9, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΎΡ‚ 1 количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ расти, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ увСличивая ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ‚ΠΎΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ расти.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ (k) ΠΏΡ€ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… значСниях ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° w:

w

0.1

0.4

0.8

0.9

1.1

1.2

1.3

1.7

1.9

k

Из Π²ΡΠ΅Π³ΠΎ этого ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ сходятся быстрСС, Ρ‡Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΎ Ρ‡Π΅ΠΌ ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠ°ΠΊ быстроС ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ нСвязок, Ρ‚Π°ΠΊ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ нСизвСстных.

Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

// -

#include <vcl.h>

#pragma hdrstop

#include «Unit1.h»

// -

#pragma package (smart_init)

#pragma resource «*.dfm»

#include

#include

TForm1 *Form1;

int n=0, prov=0, k=0;

const x=100;

float A[x] [x], B[x] [x];

float C[x], Y[x];

float *X;

bool fl1=false;

float e;

float v_sh;

// -

__fastcall TForm1:TForm1 (TComponent* Owner)

: TForm (Owner)

{

}

// -

void __fastcall TForm1: ButtonOkClick (TObject *Sender)

{

Memo1->Lines->Clear ();

k=0;

TryStrToInt (Edit1->Text, n);

if (n>1)

{

StringGrid1->Enabled=true;

StringGrid1->RowCount=n;

StringGrid1->ColCount=n+1;

ButtonClear->Enabled=true;

ButtonOk->Enabled=false;

StringGrid1->Color=clWindow;

ButtonYakobi->Enabled=true;

ButtonZeydel->Enabled=true;

ButtonRelax->Enabled=true;

X=new float[n];

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

{

for (int j=0; j; j++)

{

A[i] [j]=NULL;

}

X[i]=NULL;

}

}

else

{

ShowMessage («Π§ΠΈΡΠ»ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ вСщСствСнного Ρ‚ΠΈΠΏΠ°!«);

}

}

// -

void __fastcall TForm1: ButtonClearClick (TObject *Sender)

{

StringGrid1->Enabled=false;

StringGrid1->RowCount=0;

StringGrid1->ColCount=0;

ButtonClear->Enabled=false;

ButtonOk->Enabled=true;

StringGrid1->Color=clBtnFace;

ButtonYakobi->Enabled=false;

}

// -

void __fastcall TForm1: ButtonYakobiClick (TObject *Sender)

{

//TryStrToFloat (Edit2->Text, e);

Memo1->Lines->Clear ();

e=StrToFloat (Edit2->Text);

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

{

for (int j=0; j; j++)

{

TryStrToFloat (StringGrid1->Cells[j] [i], A[i] [j]);

}

}

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

{

for (int j=0; j; j++)

{

if (A[i] [j]==NULL)

{

ShowMessage («ΠžΡˆΠΈΠ±ΠΊΠ°! Π•ΡΡ‚ΡŒ пустыС ячСйки!«);

fl1=true;

i=n;

break;

}

}

}

if (! fl1) {

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

{

for (int j=0; j; j++)

{

if (i!=j) B[i] [j]=(-1)*A[i] [j]/A[i] [i];

else

{

B[i] [j]=0;

C[i]=A[i] [n]/A[i] [i];

}

}

}

for (int i=0; i; i++) X[i]=C[i];

float s=0;

k=0;

do

{

prov=0;

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

{

Y[i]=X[i];

for (int j=0; j; j++)

{

s+=B[i] [j]*X[i];

}

X[i]=s+C[i];

s=0;

}

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

{

if (fabs (X[i] — Y[i])

}

k++;

}

while (prov!=n);

Memo1->Lines->Add (" ΠœΠ•Π’ΠžΠ” Π―ΠšΠžΠ‘Π˜«);

Memo1->Lines->Add (««);

String p=««;

Memo1->Lines->Add («ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚очная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:«);

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

{

p=««;

for (int j=0; j; j++)

{

p+=FloatToStr (B[i] [j])+««;

}

Memo1->Lines->Add (p);

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:«);

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

{

if (X[i]≠NULL)

{

Memo1->Lines->Add («x»+IntToStr (i+1)+" = «+FloatToStr (X[i]));

}

else

{

Memo1->Lines->Add («ΠΠ΅Ρ‚ ΠΊΠΎΡ€Π½Π΅ΠΉ!«);

break;

}

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = «+FloatToStr (k));

}

}

// -

void __fastcall TForm1: ButtonExitClick (TObject *Sender)

{

Close ();

}

// -

void __fastcall TForm1: RadioButton2Click (TObject *Sender)

{

ButtonYakobi->Visible=false;

ButtonZeydel->Visible=true;

ButtonRelax->Visible=false;

}

// -

void __fastcall TForm1: RadioButton1Click (TObject *Sender)

{

ButtonYakobi->Visible=true;

ButtonZeydel->Visible=false;

ButtonRelax->Visible=false;

}

// -

void __fastcall TForm1: ButtonZeydelClick (TObject *Sender)

{

Memo1->Lines->Clear ();

k=0;

e=StrToFloat (Edit2->Text);

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

{

for (int j=0; j; j++)

{

TryStrToFloat (StringGrid1->Cells[j] [i], A[i] [j]);

}

}

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

{

for (int j=0; j; j++)

{

if (A[i] [j]==NULL)

{

ShowMessage («ΠžΡˆΠΈΠ±ΠΊΠ°! Π•ΡΡ‚ΡŒ пустыС ячСйки!«);

fl1=true;

i=n;

break;

}

}

}

if (! fl1) {

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

{

for (int j=0; j; j++)

{

if (i!=j) B[i] [j]=(-1)*A[i] [j]/A[i] [i];

else

{

B[i] [j]=0;

C[i]=A[i] [n]/A[i] [i];

}

}

}

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

{

X[i]=rand ();

}

k=0;

float s=0;

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

{

for (int j=0; j; j++)

{

s+=B[i] [j];

}

Y[i]=s;

s=0;

}

s=Y[0];

for (int i=1; i; i++)

{

if (s<Y[i]) s=Y[i];

Y[i]=0;

}

if (s<1)

{

do

{

s=0;

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

{

Y[i]=X[i];

}

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

{

s=C[i];

for (int j=0; j; j++)

{

s+=X[j]*B[i] [j];

}

X[i]=s;

}

prov=0;

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

{

if (fabs (X[i] — Y[i])

}

k++;

}

while (prov!=n);

Memo1->Lines->Add (" ΠœΠ•Π’ΠžΠ” Π—Π•Π™Π”Π•Π›Π―«);

Memo1->Lines->Add (««);

String p=««;

Memo1->Lines->Add («ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚очная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:«);

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

{

p=««;

for (int j=0; j; j++)

{

p+=FloatToStr (B[i] [j])+««;

}

Memo1->Lines->Add (p);

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:«);

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

{

if (X[i]≠NULL)

{

Memo1->Lines->Add («x»+IntToStr (i+1)+" = «+FloatToStr (X[i]));

}

else

{

Memo1->Lines->Add («ΠΠ΅Ρ‚ ΠΊΠΎΡ€Π½Π΅ΠΉ!«);

break;

}

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = «+FloatToStr (k));

}

else {Memo1->Lines->Add («Π‘ЛАУ являСтся Π½Π΅ ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ!«);}

}

}

// -

void __fastcall TForm1: RadioButton3Click (TObject *Sender)

{

ButtonYakobi->Visible=false;

ButtonZeydel->Visible=false;

ButtonRelax->Visible=true;

}

// -

void __fastcall TForm1: ButtonRelaxClick (TObject *Sender)

{

//TryStrToFloat (Edit2->Text, e);

v_sh=StrToFloat (Edit3->Text);

e=StrToFloat (Edit2->Text);

Memo1->Lines->Clear ();

k=0;

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

{

for (int j=0; j; j++)

{

TryStrToFloat (StringGrid1->Cells[j] [i], A[i] [j]);

}

}

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

{

for (int j=0; j; j++)

{

if (A[i] [j]==NULL)

{

ShowMessage («ΠžΡˆΠΈΠ±ΠΊΠ°! Π•ΡΡ‚ΡŒ пустыС ячСйки!«);

fl1=true;

i=n;

break;

}

}

}

if (! fl1) {

float vsp=0, alp=0;

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

{

for (int j=0; j; j++)

{

if (i!=j) B[i] [j]=(-1)*A[i] [j]/A[i] [i];

else

{

B[i] [j]=0;

C[i]=A[i] [n]/A[i] [i];

}

}

}

float *sq_z=new float[n];

float *sq_y=new float[n];

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

{

sq_z[i]=rand ();

}

for (int i=0; i; i++) sq_y[i]=C[i];

for (int i=0; i; i++) X[i]=0;

vsp=C[0];

for (int j=0; j; j++)

{

vsp+=sq_z[j]*B[0] [j];

}

sq_z[0]=vsp;

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

{

for (int j=0; j; j++)

{

vsp+=B[i] [j];

}

Y[i]=vsp;

vsp=0;

}

vsp=Y[0];

for (int i=1; i; i++)

{

if (vsp<Y[i]) vsp=Y[i];

Y[i]=0;

}

if (vsp<1)

{

do

{

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

{

Y[i]=X[i];

}

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

{

vsp=C[i];

for (int j=0; j; j++)

{

vsp+=sq_z[j]*B[i] [j];

alp+=B[i] [j]*sq_y[i];

}

sq_z[i]=vsp;

sq_y[i]=alp+C[i];

vsp=0;

alp=0;

X[i]=v_sh*sq_z[i]+(1-v_sh)*sq_y[i];

}

prov=0;

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

{

if (fabs (X[i] — Y[i])

}

k++;

}

while (prov!=n);

Memo1->Lines->Add (" ΠœΠ•Π’ΠžΠ” Π’Π•Π Π₯НЕЙ Π Π•Π›ΠΠšΠ‘ΠΠ¦Π˜Π˜«);

Memo1->Lines->Add (««);

String p=««;

Memo1->Lines->Add («ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚очная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:«);

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

{

p=««;

for (int j=0; j; j++)

{

p+=FloatToStr (B[i] [j])+««;

}

Memo1->Lines->Add (p);

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:«);

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

{

if (X[i]≠NULL)

{

Memo1->Lines->Add («x»+IntToStr (i+1)+" = «+FloatToStr (X[i]));

}

else

{

Memo1->Lines->Add («ΠΠ΅Ρ‚ ΠΊΠΎΡ€Π½Π΅ΠΉ!«);

break;

}

}

Memo1->Lines->Add (««);

Memo1->Lines->Add («ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = «+FloatToStr (k));

}

else {Memo1->Lines->Add («Π‘ЛАУ являСтся Π½Π΅ ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ!«);}

}

}

// -

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ расчСта

ΠœΠ•Π’ΠžΠ” Π―ΠšΠžΠ‘Π˜

ΠœΠ•Π’ΠžΠ” Π—Π•Π™Π”Π•Π›Π―

ΠœΠ•Π’ΠžΠ” Π’Π•Π Π₯НЕЙ Π Π•Π›ΠΠšΠ‘ΠΠ¦Π˜Π˜

ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:

0 -0,100 000 001 490 -0,100 000 001 490 0

-0,200 000 002 980 0 -0,100 000 001 490 0

-0,200 000 002 980 -0,200 000 002 980 0 0

ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:

x1 = 1

x2 = 1

x3 = 1,11 920 929

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = 16

ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:

0 -0,100 000 001 490 -0,100 000 001 490 0

-0,200 000 002 980 0 -0,100 000 001 490 0

-0,200 000 002 980 -0,200 000 002 980 0 0

ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:

x1 = 1

x2 = 0,99 999 988 079 071

x3 = 0,999 999 940 395 355

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = 9

ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:

0 -0,100 000 001 490 -0,100 000 001 490 0

-0,200 000 002 980 0 -0,100 000 001 490 0

-0,200 000 002 980 -0,200 000 002 980 0 0

ΠšΠΎΡ€Π½ΠΈ БЛАУ Ρ€Π°Π²Π½Ρ‹:

x1 = 1,11 920 929

x2 = 0,99 999 988 079 071

x3 = 0,999 999 940 395 355

w=1

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ = 9

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ