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

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° рСгрСссии

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

Π—Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° обращаСтся ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Koef, Π³Π΄Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ систСма Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ, составлСнная Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ вычислСнной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ коэффициСнтов Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Matrix ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ², составлСнного Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Vector, ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ЗСйдСля. ΠšΠΎΡ€Π½ΠΈ этой систСмы Π±ΡƒΠ΄ΡƒΡ‚ коэффициСнтами ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°. ПослС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСмы Π½Π° ΡΠΊΡ€Π°Π½ выводятся коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° ΠΈ Ρ„Ρ€Π°Π·Π°: «ΠΠ°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Enter». Для… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° рСгрСссии (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° рСгрСссии

1. Анализ задания Π½Π° ΠΊΡƒΡ€ΡΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΈ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° рСгрСссии Π²Ρ‚ΠΎΡ€ΠΎΠΉ стСпСни. Для расчСта ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° Π²Ρ‚ΠΎΡ€ΠΎΠΉ стСпСни:

Π³Π΄Π΅ Π°0, Π°1, Π°2 — коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ систСму Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ, Π° Π·Π°Ρ‚Π΅ΠΌ Π΅Ρ‘ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСмы ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ ЗСйдСля:

Π³Π΄Π΅, cj — элСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ коэффициСнтов

bk — элСмСнт Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ².

Π­Ρ‚Ρƒ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π² Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ срСдС программирования Turbo Pascal. Π”Π°Π½Π½Ρ‹ΠΉ язык позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ряд матСматичСских, тригономСтричСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

ΠŸΡ€ΠΈ написании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ стандартных ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ CTR, GRAPH ΠΈ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ OutΠ’extXY, STR, языка TURBO PASCAL. Π’ Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ Π² Π΄Π΅ΠΊΠ°Ρ€Ρ‚ΠΎΠ²ΠΎΠΉ систСмС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚.

2. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.1 ОписаниС структуры ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° состоит ΠΈΠ· ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Koef, Vector, Matrix, Ozifr, Tochki, Polinom ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ поставлСнных Ρ†Π΅Π»Π΅ΠΉ.

Рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅:

Π Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ начинаСтся с ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Vector, которая составляСт Π²Π΅ΠΊΡ‚ΠΎΡ€ свободных Ρ‡Π»Π΅Π½ΠΎΠ². Π’ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΡ‚ i:=1 Π΄ΠΎ Nd ΠΈ Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ Π² Π½Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΡ‚ k:=1 Π΄ΠΎ m ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅:

Sum:=Sum+exp (Ln (x[k])*(i-1))*y[k]

ΠΏΡƒΡ‚Π΅ΠΌ обращСния ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ массива Π΄Π°Π½Π½Ρ‹Ρ… происходит вычислСниС i-ΠΎΠ³ΠΎ элСмСнта Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ².

Π”Π°Π»Π΅Π΅ вызываСтся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Matrix. Она состоит ΠΈΠ· Ρ€ΡΠ΄Π° Ρ†ΠΈΠΊΠ»ΠΎΠ²: ΠΎΡ‚ i:=1 Π΄ΠΎ Nd ΠΈ Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π² Π½Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°Ρ… ΠΎΡ‚ j:=1 Π΄ΠΎ Nd, k:=1 Π΄ΠΎ m составляСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° коэффициСнтов.

РасчСт элСмСнтов ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ производится ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅:

Sum:=Sum+exp (Ln (x[k])*(i+j-2)).

Π—Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° обращаСтся ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Koef, Π³Π΄Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ систСма Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ, составлСнная Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ вычислСнной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ коэффициСнтов Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Matrix ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ², составлСнного Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Vector, ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ЗСйдСля. ΠšΠΎΡ€Π½ΠΈ этой систСмы Π±ΡƒΠ΄ΡƒΡ‚ коэффициСнтами ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°. ПослС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ систСмы Π½Π° ΡΠΊΡ€Π°Π½ выводятся коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° ΠΈ Ρ„Ρ€Π°Π·Π°: «ΠΠ°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Enter». Для продолТСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ «Enter». Π‘Π»Π΅Π΄ΠΎΠΌ рассчитываСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° Π±Ρ‹Π» ΠΏΠ»Π°Π²Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ графичСский Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ VGA ΠΈ Ρ€Π΅ΠΆΠΈΠΌ VGAHI. Π”Π°Π»Π΅Π΅ опрСдСляСтся максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… MaΡ…X, MaΡ…Y c ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ GetMaxX, GetMaxY. Π‘Π»Π΅Π΄ΠΎΠΌ опрСдСляСтся расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ линиями сСтки ΠΏΠΎ ΠΎΡΠΈ ОΠ₯, ОY:

Rx:=(MaxX-L-P)/(Lin-1);

Ry:=(MaxY-V-N)/(Lin-1);

ΠΏΠΎΡ‚ΠΎΠΌ рассчитываСтся шаг Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ…, Ρƒ ΠΏΠΎ ΠΎΡΠΈ ОΠ₯, ОY

Spx:=(x[m] - x[1])/(Lin-1);

Spy:=(y[3] - y[1])/(Lin-1).

Π—Π°Ρ‚Π΅ΠΌ происходит Π²Ρ‹Π²ΠΎΠ΄ подписСй осСй. УстанавливаСтся Ρ†Π²Π΅Ρ‚ Π»ΠΈΠ½ΠΈΠΉ сСтки сСрым SetColor (Lightgray). Π’ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΡ‚ i:=1 Π΄ΠΎ Lin ΠΈΠ΄Π΅Ρ‚ построСниС Π»ΠΈΠ½ΠΈΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π½ΠΎΠΉ сСтки ΠΏΡƒΡ‚Ρ‘ΠΌ провСдСния Π»ΠΈΠ½ΠΈΠΉ.

Line (Round (L+Rx*(i-1)), MaxY-N, Round (L+Rx*(i-1)), V); Line (L, Round (MaxY-N-Ry*(i-1)), MaxX-P, Round (MaxY-N-Ry*(i-1))).

Π—Π°Ρ‚Π΅ΠΌ вызываСтся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Ozifr, которая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΡƒ осСй. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Str Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

Ρ…[1]+Spx*(i-1)

прСобразуСтся Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ΡΡ значСния ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ss. Π”Π°Π»Π΅Π΅ выравниваСтся тСкст, цСнтрируСтся ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ. Π—Π°Ρ‚Π΅ΠΌ выводится пСрСмСнная ss с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ OutTextXY Π² Ρ‚ΠΎΡ‡ΠΊΡƒ

(L+Round (Rx*(i-1)), MaxY-N+Tx).

Π‘Π»Π΅Π΄ΠΎΠΌ ΠΈΠ΄Π΅Ρ‚ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста для Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ y. ВСкст выравниваСтся Π²ΠΏΡ€Π°Π²ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ ΠΈ Ρ†Π΅Π½Ρ‚рируСтся ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

y[1]+Spy*(i-1):3:1, ss

прСобразуСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Str Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ΡΡ значСния ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ss. ΠŸΠΎΡ‚ΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ss выводятся Π² Ρ‚ΠΎΡ‡ΠΊΠ΅

(L-Tx, MaxY-N-Round (Ry*(i-1)))

с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ OutTextXY.

Π—Π°Ρ‚Π΅ΠΌ происходит расчСт коэффициСнтов ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ x, y с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ xx, yy

Zx:=(MaxX-L-P)/(x[m] - x[1]);

Zy:=(MaxY-V-N)/(y[3] - y[1]).

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌ рСгрСссия pascal

Π”Π°Π»Π΅Π΅ вызываСтся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Tochki. Π’ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΡ‚ j:=1 Π΄ΠΎ m происходит построСниС Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ‚ΠΎΡ‡Π΅ΠΊ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°ΠΌ

xx[j]: =L+Round ((x[j] - x[1])*Zx);

yy[j]: =MaxY-N-Round ((y[j] - y[1])*Zy),

послС ΠΏΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Π½Π½Ρ‹ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ проводится ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ с Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠΌ Π² Ρ‚ΠΎΡ‡ΠΊΠ΅ (xx[j], yy[j]) ΠΈ Ρ€Π°Π΄ΠΈΡƒΡΠΎΠΌ Ρ‚Ρ€ΠΈ пиксСля. ΠŸΠΎΡ‚ΠΎΠΌ ΠΈΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Polinom. Π’ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΡ‚ i:=1 Π΄ΠΎ t происходит расчСт Ρ‚ΠΎΡ‡Π΅ΠΊ для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°ΠΌ

xx[i]: =L+Round ((xx1 [i] - xx1 [1])*Zx);

yy[i]: =MaxY-N-Round ((f (xx1 [i], a0, a1, a2) — y[1])*Zy),

Π³Π΄Π΅ f - функция ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° рСгрСссии Π²Ρ‚ΠΎΡ€ΠΎΠΉ стСпСни, Π² Π½Π΅Ρ‘ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

xx1 [i] - Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ происходит построСниС,

a0, a1, a2 — коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°.

Π—Π°Ρ‚Π΅ΠΌ провСряСтся условиС

If i=1 Then MoveTo (xx[i], yy[i]) Else LineTo (xx[i], yy[i]),

это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли i=1 графичСский ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ пСрСмСщаСтся Π² Ρ‚ΠΎΡ‡ΠΊΡƒ с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ (xx[j], yy[j]), ΠΈΠ½Π°Ρ‡Π΅ проводится линия ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ полоТСния графичСского указатСля Π² Ρ‚ΠΎΡ‡ΠΊΡƒ с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ (xx[i], yy[i]). Π—Π°Ρ‚Π΅ΠΌ оТидаСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши «Enter» ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

2.2 ОписаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ осущСствляСтся инициализация графичСского Ρ€Π΅ΠΆΠΈΠΌΠ°.

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Vector ΠΈ Matrix, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… происходит составлСниС Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ² ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ коэффициСнтов систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ.

Π”Π°Π»Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ, Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ коэффициСнтов ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Koef.

ΠŸΠΎΡ‚ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄ коэффициСнтов ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°, инструкция ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π° ΡΠΊΡ€Π°Π½ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши «Enter».

Расчёт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ… Π΄Π»Ρ построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° полиномиальной рСгрСссии Π²Ρ‚ΠΎΡ€ΠΎΠΉ стСпСни.

ПослС расчСта происходит инициализация графичСского Ρ€Π΅ΠΆΠΈΠΌΠ° с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 640?480 пиксСлСй, 16 Ρ†Π²Π΅Ρ‚ΠΎΠ².

Π—Π°Ρ‚Π΅ΠΌ расчёты расстояния ΠΌΠ΅ΠΆΠ΄Ρƒ линиями сСтки ΠΏΠΎ ΠΎΡΠΈ OX ΠΈ OY ΠΈ ΡˆΠ°Π³Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ… ΠΏΠΎ ΠΎΡΠΈ OX ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ y ΠΏΠΎ OY.

ΠŸΠΎΡ‚ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄ подписСй осСй ΠΈ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΉ сСтки.

Π”Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Ozifr, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ происходит ΠΎΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° осСй ΠžΠ₯ ΠΈ OY, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΠΎ ΠΎΡΠΈ ΠžΠ₯ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒΡΡ значСния Ρ…, Π° ΠΏΠΎ ΠΎΡΠΈ OY значСния Ρƒ.

Π Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ коэффициСнты ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ значСния Ρ…, Ρƒ Ρ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ.

Π—Π°Ρ‚Π΅ΠΌ построСниС Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Ρ‚ΠΎΡ‡Π΅ΠΊ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ построСниС Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π»ΠΈΠ½ΠΈΠΈ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° рСгрСссии, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Tochki ΠΈ Polinom. ОТиданиС Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши «Enter».

3. Π‘Π»ΠΎΠΊ-схСмы Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²

3.1 Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ f

3.2 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Koef

3.3 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Ozifr

3.4 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Vector

3.5 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Matrix

3.6 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Tochki

3.7 Π‘Π»ΠΎΠΊ-схСма ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Polinom

3.8 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

Program POLINOM;

Uses CRT, GRAPH;

Const

e=0.1; {ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΡŒ вычислСний}

m=9; {количСство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ x, y Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄Π°Π½Π½Ρ‹Ρ…}

Nd=3; {порядок систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ}

t=60; {количСство Ρ‚ΠΎΡ‡Π΅ΠΊ для ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° рСгрСссии}

P=40; {отступ сСтки справа, [pix]}

L=50; {отступ сСтки слСва, [pix]}

N=50; {отступ сСтки снизу, [pix]}

V=50; {отступ сСтки свСрху, [pix]}

Lin=6; {число Π»ΠΈΠ½ΠΈΠΉ Π² ΡΠ΅Ρ‚ΠΊΠ΅}

Ndp=20; {отступ для надписи, [pix]}

Tx=10; {отступ для тСкста, [pix]}

x:array [1.m] of extended=

(100,200,200,300,300,400,500,600,600); {Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Π΅ значСния Ρ…}

y:array [1.m] of extended=

(8. 1,15. 3,16. 2,18. 5,17,13. 5,12. 3,11. 1,10.5);

{Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Π΅ значСния Ρƒ}

X1:array [1.Nd] of extended=(0,0,0); {Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ приблиТСния ΠΊΠΎΡ€Π½Π΅ΠΉ систСмы}

VAR

b, {Π²Π΅ΠΊΡ‚ΠΎΡ€ свободных Ρ‡Π»Π΅Π½ΠΎΠ²}

X2, {ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π½Π΅ΠΉ систСмы}

Sum1: array [1.Nd] of extended; {сумма}

A:array [1.Nd, 1. Nd] of extended;

{ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° коэффициСнтов систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ}

xx, yy: array [1.t] of integer; {ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ x, y Π΄Π»Ρ построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ²}

xx1:array [1.t] of extended; {Π½ΠΎΠ²Ρ‹Π΅ значСния ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ…}

k, i, j, d: integer; {индСксы ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…}

Sum, Sum2, {суммы}

h, {шаг измСнСния Ρ…}

a0, a1, a2: extended; {коэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°}

GrDriver, {графичСский Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€}

GrMode:integer; {графичСский Ρ€Π΅ΠΆΠΈΠΌ}

MaxX, MaxY: integer; {максимальноС ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ X, Y, [pix]}

Rx, Ry: extended; {расстояния ΠΌΠ΅ΠΆΠ΄Ρƒ линиями сСтки ΠΏΠΎ ΠΎΡΠΈ X, Y, [pix]}

Spx, {шаг Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ… ΠΏΠΎ ΠΎΡΠΈ 0Π₯}

Spy:extended; {шаг Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ y ΠΏΠΎ ΠΎΡΠΈ 0Y}

ss:string; {строковая пСрСмСнная}

Zx, Zy: extended; {коэффициСнты для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² Π³Ρ€. Ρ€Π΅ΠΆΠΈΠΌ}

{*********************** ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌ 2 стСпСни ************************}

Function f (x, a0, a1, a2: extended): extended;

Begin

f:=a0+a1*x+a2*sqr (x);

End;

{***************вычислСниС Π²Π΅ΠΊΡ‚ΠΎΡ€Π° свободных Ρ‡Π»Π΅Π½ΠΎΠ² ***************}

Procedure Vector;

Begin

For i:=1 to Nd do

Begin

Sum:=0;

For k:=1 to m do

Begin

Sum:=Sum+exp (Ln (x[k])*(i-1))*y[k];

End;

b[i]:=Sum;

End;

End;

{**************** вычислСниС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ коэффициСнтов ***************}

Procedure Matrix;

Begin

For i:=1 to Nd do

For j:=1 to Nd do

Begin

Sum:=0;

For k:=1 to m do

Begin

Sum:=Sum+exp (Ln (x[k])*(i+j-2));

End;

A [i, j]: =Sum;

End;

End;

{****************вычислСниС коэффициСнтов ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° ***************}

Procedure Koef;

Begin

Repeat

d:=0;

For i:=1 to Nd do

Begin

Sum:=0;

For k:=i to Nd do

Begin

Sum:=Sum+A [i, k]*X1 [k];

End;

Sum2:=0;

For k:=1 to i-1 do

Begin

Sum2:=Sum2+A [i, k]*X2 [k];

End;

Sum1 [i]: =Sum+Sum2-B[i];

X2 [i]: =X1 [i] - Sum1 [i]/A [i, i];

If Abs (X2 [i] - X1 [i])>E

Then d:=1;

X1 [i]: =X2 [i];

End;

Until d=0;

End;

{************************ ΠΎΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° осСй *************************}

Procedure Ozifr;

Begin

SetColor (White);

For i:=1 to Lin do

Begin

Str (x[1]+Spx*(i-1):3:1, ss);

SetTextJustify (CenterText, CenterText); {Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста}

OutTextXY (L+Round (Rx*(i-1)), MaxY-N+Tx, ss);

SetTextJustify (RightText, CenterText); {Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста}

Str (y[1]+Spy*(i-1):3:1, ss);

OuttextXY (L-Tx, MaxY-N-Round (Ry*(i-1)), ss);

End;

End;

{*************** построСниС ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ ***************}

Procedure Tochki;

Begin

SetColor (Green);

For j:=1 to m d

Begin

xx[j]: =L+Round ((x[j] - x[1])*Zx);

yy[j]: =MaxY-N-Round ((y[j] - y[1])*Zy);

Circle (xx[j], yy[j], 3)

End;

End;

{****************** построСниС ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° рСгрСссии *****************}

Procedure Polinom;

Begin

SetColor (Red);

For i:=1 to t do

Begin

xx[i]: =L+Round ((xx1 [i] - xx1 [1])*Zx);

yy[i]: =MaxY-N-Round ((f (xx1 [i], a0, a1, a2) — y[1])*Zy);

If i=1 Then MoveTo (xx[i], yy[i])

Else LineTo (xx[i], yy[i]);

End;

End;

{***********************Основная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°***********************}

Begin;

Clrscr;

Vector;

Matrix;

Koef;

Writeln (' KоэффициСнты ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°: ');

For i:=1 to Nd do

Writeln ('a', i-1,'=', x1 [i]: 3:10);

Writeln (' НаТмитС ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Enter');

a0:=x1 [1]; a1:=x1 [2]; a2:=x1 [3];

Readln;

{*************** вычислСниС шага ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ числа Ρ… ***************}

h:=(x[m] - x[1])/(t-1);

For i:=1 to t do

xx1 [i]: =x[1]+h*(i-1);

{****************** инициализация Π³Ρ€. Ρ€Π΅ΠΆΠΈΠΌΠ° **********************}

GrDriver:=VGA;

GrMode:=VGAHi;

InitGraph (GrDriver, GrMode, '');

{****************************************************************}

MaxX:=GetMaxX;

MaxY:=GetMaxY;

Rx:=(MaxX-L-P)/(Lin-1); {расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ Π»ΠΈΠ½. сСтки}

Ry:=(MaxY-V-N)/(Lin-1);

Spx:=(x[m] - x[1])/(Lin-1); {шаг ΠΊΠΎΠΎΡ€Π΄. x, y ΠΏΠΎ ΠΎΡΡΠΌ ΠΎx, ΠΎy}

Spy:=(y[4] - y[1])/(Lin-1);

{***************** подпись осСй ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° *****************}

OutTextXY (MaxX-P, MaxY-N+Ndp-5,'x');

OutTextXY (L-23, V-Ndp+5,'y');

SetTextJustify (CenterText, TopText); {Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста}

{********************* построСниС Π»ΠΈΠ½ΠΈΠΉ сСтки *********************}

SetColor (Lightgray);

For i:=1 to Lin do

Begin

Line (Round (L+Rx*(i-1)), MaxY-N, Round (L+Rx*(i-1)), V);

Line (L, Round (MaxY-N-Ry*(i-1)), MaxX-P, Round (MaxY-N-Ry*(i-1)));

End;

{*********************ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² Π³Ρ€Π°Ρ„. Ρ€Π΅ΠΆΠΈΠΌ ***********************}

Ozifr;

Zx:=(MaxX-L-P)/(x[m] - x[1]);

Zy:=(MaxY-V-N)/(y[3] - y[1]);

Tochki;

Polinom;

Readln;

End.

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