ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ
ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠ°ΠΏ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. ΠΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ· ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΌΡΡΠ»Π° Π·Π°Π΄Π°ΡΠΈ. ΠΡΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ, Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΡΠ½ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎΠΌ. ΠΡΠ»ΠΈ Π½Π° ΠΊΠΎΠ½ΡΠ°Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΡΡΠ΅Π·ΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ f (x) ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ Π·Π½Π°ΠΊΠΈ, ΡΠΎ Π½Π° ΡΡΠΎΠΌ ΠΎΡΡΠ΅Π·ΠΊΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ f (x) = 0 ΠΈΠΌΠ΅Π΅Ρ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
1. ΠΠ½Π°Π»ΠΈΠ· Π·Π°Π΄Π°ΡΠΈ
1.1 ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ
Π ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π½Π°ΡΡΠ½ΡΡ ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΡ ΡΠ°ΡΡΠ΅ΡΠΎΠ² ΡΠ°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ Π²ΠΈΠ΄Π° f (x) = 0. ΠΡΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»Π΅Π½, ΡΠΎ Π΄Π°Π½Π½ΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π°Π»Π³Π΅Π±ΡΠ°ΠΈΡΠ΅ΡΠΊΠΈΠΌ. ΠΡΠ»ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄ Π·Π½Π°ΠΊΠΎΠΌ ΡΡΠ°Π½ΡΡΠ΅Π½Π΄Π΅Π½ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ (ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ, Π»ΠΎΠ³Π°ΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ, ΡΡΠΈΠ³ΠΎΠ½ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈ Ρ. ΠΏ.), ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ°Π½ΡΡΠ΅Π½Π΄Π΅Π½ΡΠ½ΡΠΌ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ , ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ f (x) = 0, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΡΠ½Π΅ΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ.
Π ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ f (x) = 0 Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΡΠΌΡΠ» Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠΎΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌ. ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π²ΡΡΡΠ΅ΡΠ°ΡΡΠΈΠ΅ΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΡ, Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π ΡΠΈΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΡΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΎΡΠ΅ΡΡ ΠΎΡΡΡΠΊΠ°Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΡΠ°ΠΏΠΎΠ²:
1) Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ;
2) ΡΡΠΎΡΠ½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠΎΡΠ½ΠΎΡΡΠΈ.
ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠ°ΠΏ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. ΠΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ· ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΌΡΡΠ»Π° Π·Π°Π΄Π°ΡΠΈ. ΠΡΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ, Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΡΠ½ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎΠΌ. ΠΡΠ»ΠΈ Π½Π° ΠΊΠΎΠ½ΡΠ°Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΡΡΠ΅Π·ΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ f (x) ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ Π·Π½Π°ΠΊΠΈ, ΡΠΎ Π½Π° ΡΡΠΎΠΌ ΠΎΡΡΠ΅Π·ΠΊΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ f (x) = 0 ΠΈΠΌΠ΅Π΅Ρ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΡΠ΅Π½Ρ.
Π ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΡ ΠΊΠΎΡΠ½Π΅ΠΉ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΡΠΎΠΈΡΡΡ Π³ΡΠ°ΡΠΈΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ y = f (x), Π°Π±ΡΡΠΈΡΡΡ ΡΠΎΡΠ΅ΠΊ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Ρ ΠΎΡΡΡ Ox Π΄Π°Π΄ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ. ΠΠ½ΠΎΠ³Π΄Π° ΡΠ΄Π°Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠ½ΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π²Π±Π»ΠΈΠ·ΠΈ ΠΊΠΎΡΠ½Π΅ΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΄ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»Π΅Π½ΠΎΠ².
ΠΠ°ΠΉΠ΄Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ ΡΡΠΎΡΠ½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ ΠΈΠ· Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ:
— ΠΌΠ΅ΡΠΎΠ΄ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡΡΠ΅Π·ΠΊΠ° ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ;
— ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΉ (ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ);
— ΠΌΠ΅ΡΠΎΠ΄ ΠΡΡΡΠΎΠ½Π° (ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ).
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ, Ρ.ΠΊ. ΠΎΠ½ ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠΌ ΠΌΠΎΠ΅ΠΉ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ.
1.2 ΠΠ΅ΡΠΎΠ΄ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΉ (ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ)
Π£ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ f (x) = 0 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² ΡΠΎΡΠΌΠ΅ x = ?(x). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ x, Π° ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π² ΠΏΡΠ°Π²ΡΡ ΡΠ°ΡΡΡ. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅: x = x + cf (x), Π³Π΄Π΅ Ρ — ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½Π°Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ. x[0] Π·Π°Π΄Π°Π΅ΡΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π° ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠΎΠΉ Π²ΠΈΠ΄Π°: x[n + 1] = ?(x[n]). ΠΡΠΎΡΠ΅ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π»Ρ Π΄Π²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ³ΡΠ΅ΡΠ½ΠΎΡΡΠΈ.
2. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
2.1 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ ΡΠ΅ΡΡΡΡΠ°ΠΌ
ΠΠ°Π½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π½Π° Π±Π°Π·Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Intel Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Windows 7. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡΡΡ Π½Π° Π»ΡΠ±ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Ρ Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°ΡΠΈΠ΅ΠΉ. Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΠ»ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π² ΠΠ‘ Windows XP, ΡΠ±ΠΎΠ΅Π² Π² ΡΠ°Π±ΠΎΡΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΎ Π½Π΅ Π±ΡΠ»ΠΎ.
2.2 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠ»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π»ΠΈΠ±ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ RAD Studio 2012 Π»ΠΈΠ±ΠΎ Delphi 2007. Π‘ΡΠ΅Π΄Π° Delphi Π±ΡΠ»Π° Π²ΡΠ±ΡΠ°Π½Π° Π² ΡΠΈΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΡΠΈΡΠΎΠΊΠΎΠΌΡ ΠΊΡΡΠ³Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
3. Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ΅ ΠΌΠ½ΠΎΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ, Π΄ΡΡΠΆΠ΅Π»ΡΠ±Π½ΡΠΉ ΠΈ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠ°ΠΉΠ»Π° Project1. exe Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π³Π»Π°Π²Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π ΠΈΡΡΠ½ΠΎΠΊ 1).
Π ΠΈΡΡΠ½ΠΎΠΊ 1 — ΠΠ»Π°Π²Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΠ²Π΅ΡΡ Ρ ΡΠΎΡΠΌΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅, ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. ΠΠΎΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ ΡΠΎΡΠΌΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π³ΡΠ°ΡΠΈΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π²ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.
Π Π»Π΅Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ³Π»Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° ΠΏΠ°Π½Π΅Π»Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ TCheckBox, TLabeledEdit, TButton.
TCheckBox Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ «ΠΠ½ΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½Π° ΠΏΡΠΎΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΉ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠ΅. Π ΠΏΠΎΠ»Π΅ TLabeledEdit ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΆΠ΅Π»Π°Π΅ΠΌΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ. ΠΠΎ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ «Π Π΅ΡΠΈΡΡ» Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ.
ΠΠ½ΠΎΠΏΠΊΠ° Π·Π°ΠΊΡΡΡΡ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΠΏΡΠ°Π²ΠΎΠΌ ΡΠ³Π»Ρ, Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
4. Π’Π΅ΡΡΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ exp (x) + ln (x) — 10x = 0. ΠΠ½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΊΠΎΡΠ΅Π½Ρ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ (0, 4). ΠΡΠΈ Ρ > 4 Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ y = exp (x) + ln (x) — 10x Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ, ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π°Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ. ΠΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ ΠΊΠΎΡΠ΅Π½Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ 0 ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π²Π΅Π½ 3,5. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΡΠΎΡΠ½ΠΈΡΡ Π΅Π³ΠΎ Π΄ΠΎ Π½ΡΠΆΠ½ΠΎΠΉ Π½Π°ΠΌ ΡΠΎΡΠ½ΠΎΡΡΠΈ.
5. Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΠΏΠΎΠ»Π΅ «Π’ΠΎΡΠ½ΠΎΡΡΡ» Π²Π²ΠΎΠ΄ΠΈΠΌ Π½ΡΠΆΠ½ΡΡ Π½Π°ΠΌ ΡΠΎΡΠ½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ (Π ΠΈΡΡΠ½ΠΎΠΊ 2).
Π ΠΈΡΡΠ½ΠΎΠΊ 2 — ΠΠ²ΠΎΠ΄ ΡΠΎΡΠ½ΠΎΡΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΠ°Π»Π΅Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ «ΠΠ½ΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ» Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π²ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ (Π ΠΈΡΡΠ½ΠΎΠΊ 3).
Π ΠΈΡΡΠ½ΠΎΠΊ 3 — Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ Π²ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½Π°, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ «Π Π΅ΡΠΈΡΡ».
ΠΠ°Π΄ Π³ΡΠ°ΡΠΈΠΊΠΎΠΌ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ TLabel, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°. ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠ°ΠΏ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ — ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ (Π ΠΈΡΡΠ½ΠΎΠΊ 4).
Π ΠΈΡΡΠ½ΠΎΠΊ 4 — Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΡΠΎΡΡΠΌ ΡΡΠ°ΠΏΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ (Π ΠΈΡΡΠ½ΠΎΠΊ 5).
Π ΠΈΡΡΠ½ΠΎΠΊ 5 — ΠΠΎΠΈΡΠΊ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Ρ
ΠΠ°Π»Π΅Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² Π±ΠΈΡΡΠ΅ΠΊΡΡΠΈΡΡ ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠΎΡΠ½Π΅ΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ (Π ΠΈΡΡΠ½ΠΎΠΊ 6, 7).
Π ΠΈΡΡΠ½ΠΎΠΊ 6 — ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ Π±ΠΈΡΡΠ΅ΠΊΡΡΠΈΡΡ Π ΠΈΡΡΠ½ΠΎΠΊ 7 — ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠ°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈ ΡΠ°ΠΌΡΠΌ Π³Π»Π°Π²Π½ΡΠΌ ΡΡΠ°ΠΏΠΎΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² Π±ΠΈΡΡΠ΅ΠΊΡΡΠΈΡΡ ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ (Π ΠΈΡΡΠ½ΠΎΠΊ 8).
Π ΠΈΡΡΠ½ΠΎΠΊ 8 — ΠΠΎΠΈΡΠΊ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΠΎΠ³Π΄Π° ΡΠΎΡΠ½ΠΎΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΡΠ½Ρ Π΄ΠΎΡΡΠΈΠ³Π½Π΅Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°Π²Π΅ΡΡΠΈΡ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ ΠΈ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ TLabel, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π²Π²Π΅ΡΡ Ρ ΠΎΠΊΠ½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π ΠΈΡΡΠ½ΠΎΠΊ 9).
Π ΠΈΡΡΠ½ΠΎΠΊ 9 — ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠ½Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ ΠΈ ΠΊΠΎΡΠ΅Π½Ρ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½ Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΡΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ. ΠΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎΠ± ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ.
6. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ΅ ΠΌΠ½ΠΎΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΅Π±Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠ±ΠΈΡ Π΄Π»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅ΠΉ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ, Ρ.ΠΊ. Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΡΠΌΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΡΠ°ΠΏΠ° Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅
// ΠΠΎΠ΄ΡΠ»Ρ UnitEquation. pas
unit UnitEquation;
interface
uses Chart, Series, Forms, Windows, StdCtrls, SysUtils, Graphics;
type
TEquation = class
private
fResult: extended;
fAccuracy: extended;
fToAnimate: boolean;
fLabelPodskazka: TLabel;
fLineSeriesFx: TLineSeries;
fLineBisector: TLineSeries;
fPoint: TPointSeries;
function Func (x: extended): extended;
function Phi (x: extended): extended;
procedure DrawMainFunc;
function FindApproxTrunc: extended;
procedure DrawBisector;
procedure DrawFuncPhi;
function FindCrossing (approxTrunc: extended): extended;
function DrawVertical (x0: extended): extended;
function DrawHorizontal (x0: extended): extended;
procedure DrawTrunc;
procedure ChangeAxes (leftMin, leftMax, bottomMin, bottomMax: extended);
public
constructor Create (Chart: TChart; labelPodskazka: TLabel);
function FindResult: extended;
property Accuracy: extended read fAccuracy write fAccuracy;
property ToAnimate: boolean read fToAnimate write fToAnimate;
property Result: extended read fResult;
end;
implementation
constructor TEquation. Create (Chart: TChart; labelPodskazka: TLabel);
begin
fLineSeriesFx := TLineSeries. Create (Chart);
fLineSeriesFx.Pen.Width := 2;
Chart.AddSeries (fLineSeriesFx);
fLineBisector := TLineSeries. Create (Chart);
fLineBisector.Pen.Width := 2;
Chart.AddSeries (fLineBisector);
fPoint := TPointSeries. Create (Chart);
Chart.AddSeries (fPoint);
fLabelPodskazka := labelPodskazka;
end;
function TEquation. FindResult: extended;
var approxTrunc: extended;
begin
fLineSeriesFx.Clear;
fLineBisector.Clear;
fPoint.Clear;
fLabelPodskazka.Caption := 'Π ΠΈΡΡΠ΅ΠΌ Π³ΡΠ°ΡΠΈΠΊ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ';
DrawMainFunc;
fLabelPodskazka.Caption := 'ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠ½Ρ';
approxTrunc := FindApproxTrunc;
fLabelPodskazka.Caption := 'ΠΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: x = ' + FloatToStr (approxTrunc);
Application.ProcessMessages;
Sleep (3000);
fPoint.Clear;
fLabelPodskazka.Caption := 'Π‘ΡΡΠΎΠΈΠΌ Π±ΠΈΡΡΠ΅ΠΊΡΡΠΈΡΡ';
DrawBisector;
fLabelPodskazka.Caption := 'Π ΠΈΡΡΠ΅ΠΌ Π³ΡΠ°ΡΠΈΠΊ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ';
DrawFuncPhi;
fLabelPodskazka.Caption := 'ΠΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π±ΠΈΡΡΠ΅ΠΊΡΡΠΈΡΠΎΠΉ';
fResult := FindCrossing (approxTrunc);
fLabelPodskazka.Caption := 'ΠΠΎΡΠ΅Π½Ρ Π½Π°ΠΉΠ΄Π΅Π½: x = ' + FloatToStrF (fResult, ffFixed, 4, 3);
DrawTrunc;
end;
procedure TEquation. DrawMainFunc;
var x: extended;
begin
fLineSeriesFx.Clear;
ChangeAxes (-20, 25, -0.5, 4.5);
x := 0.0001;
while x <= 4 do
begin
if fToAnimate then
begin
Application.ProcessMessages;
Sleep (1);
end;
fLineSeriesFx.AddXY (x, Func (x));
x := x + 0.01;
end;
end;
function TEquation. FindApproxTrunc: extended;
var x: extended;
begin
x := 1;
fPoint.Clear;
fPoint.Color := clGreen;
while abs (Func (x)) > 3 do
begin
if fToAnimate then
begin
Application.ProcessMessages;
Sleep (500);
end;
fPoint.Clear;
fPoint.AddXY (x, Func (x));
x := x + 0.5;
end;
Result := x — 0.5;
end;
procedure TEquation. DrawBisector;
var x: extended;
begin
fLineSeriesFx.Clear;
ChangeAxes (1.5, 4.5, 1.5, 4.5);
x := 2;
while x <= 4 do
begin
if fToAnimate then
begin
Application.ProcessMessages;
Sleep (8);
end;
fLineSeriesFx.AddXY (x, x);
x := x + 0.01;
end;
end;
procedure TEquation. DrawFuncPhi;
var x: extended;
begin
x := 2;
while x <= 4 do
begin
if fToAnimate then
begin
Application.ProcessMessages;
Sleep (1);
end;
fLineBisector.AddXY (x, Phi (x));
x := x + 0.01;
end;
end;
function TEquation. FindCrossing (approxTrunc: extended): extended;
var newResult, oldResult: extended;
begin
oldResult := approxTrunc;
DrawVertical (approxTrunc);
newResult := DrawHorizontal (approxTrunc);
while abs ((newResult — oldResult)/oldResult) >= fAccuracy do
begin
oldResult := newResult;
DrawVertical (oldResult);
newResult := DrawHorizontal (oldResult);
end;
Result := newResult;
end;
function TEquation. DrawVertical (x0: extended): extended;
var Line: TLineSeries;
y: extended;
bound: extended;
step: extended;
begin
Line := TLineSeries. Create (fLineSeriesFx.ParentChart);
Line.Color := clBlack;
Line.Pen.Width := 1;
fLineSeriesFx.ParentChart.AddSeries (Line);
y := 2;
bound := Phi (x0);
step := (bound — y)/50;
while y < bound + step/2 do
begin
if fToAnimate then
begin
Application.ProcessMessages;
end;
Line.AddXY (x0, y);
y := y + step;
end;
Result:= y — step;
end;
function TEquation. DrawHorizontal (x0: extended): extended;
var Line: TLineSeries;
x: extended;
bound: extended;
toRight: boolean;
step: extended;
begin
Line := TLineSeries. Create (fLineSeriesFx.ParentChart);
Line.Color := clBlack;
Line.Pen.Width := 1;
fLineSeriesFx.ParentChart.AddSeries (Line);
toRight := Phi (x0) > x0;
x := x0;
bound := Phi (x0);
step := abs ((bound — x)/50);
while (x > bound — step/2 + 2*step*(integer (toRight))) xor toRight do
begin
if fToAnimate then
begin
Application.ProcessMessages;
end;
Line.AddXY (x, bound);
x := x — step + 2*step*(integer (toRight));
end;
Result:= x + step — 2*step*(integer (toRight));
end;
procedure TEquation. DrawTrunc;
begin
end;
procedure TEquation. ChangeAxes (leftMin, leftMax, bottomMin, bottomMax: extended);
begin
fLineSeriesFx.ParentChart.Axes.Left.Minimum := leftMin;
fLineSeriesFx.ParentChart.Axes.Left.Maximum := leftMax;
fLineSeriesFx.ParentChart.Axes.Bottom.Minimum := bottomMin;
fLineSeriesFx.ParentChart.Axes.Bottom.Maximum := bottomMax;
end;
function TEquation. Func (x: extended): extended;
begin
Result := exp (x) + ln (x) — 10*x;
end;
function TEquation. Phi (x: extended): extended;
begin
Result := x — 0.07*Func (x);
end;
end.