ΠΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΡΠ»ΡΡΠ°ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. Π ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π΅ - Π½Π΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΠ΄Π½ΠΎΠΉ, Π° ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ, ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²Π΅ Ρ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠΌ. ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ - ΠΈΠ· ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ.
ΠΠΎΠΆΠ΅Ρ Π»ΠΈ ΡΠ°ΠΌΠΎΠ»Π΅Ρ Π±ΡΡΡ ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ?
ΠΠ°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΡΠΊΠΎΡΠ΅Π΅ ΠΊ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ, ΡΠ΅ΠΌ ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
ΠΡΡΡΡ ΠΊΠ»Π°ΡΡ AIRPLANE ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠ°ΠΌΠΎΠ»Π΅Ρ. Π‘ΡΠ΅Π΄ΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π½Π΅ΠΌΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΈΡΠ»ΠΎ ΠΏΠ°ΡΡΠ°ΠΆΠΈΡΠΎΠ² (passenger_count), Π²ΡΡΠΎΡΠ° (altitude), ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (position), ΡΠΊΠΎΡΠΎΡΡΡ (speed); ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ - Π²Π·Π»Π΅ΡΠ΅ΡΡ (take_off), ΠΏΡΠΈΠ·Π΅ΠΌΠ»ΠΈΡΡΡΡ (land), Π½Π°Π±ΡΠ°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ (set_speed).
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡΡΡ ΠΊΠ»Π°ΡΡ ASSET, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°. Π Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ½Π΅ΡΡΠΈ ΡΠ°ΠΊΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠ°ΠΊ ΡΠ΅Π½Π° ΠΏΠΎΠΊΡΠΏΠΊΠΈ (purchase_price), ΡΠ΅Π½Π° ΠΏΡΠΎΠ΄Π°ΠΆΠΈ (resale_value), ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π² ΡΠ΅Π½Π΅ (depreciate), ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΠ΄Π°ΡΡ (resell), Π²Π½Π΅ΡΡΠΈ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΠΏΠ»Π°ΡΠ΅ΠΆ (pay_installment).
ΠΠ°Π²Π΅ΡΠ½ΠΎΠ΅, Π²Ρ Π΄ΠΎΠ³Π°Π΄Π°Π»ΠΈΡΡ, ΠΊ ΡΠ΅ΠΌΡ ΠΌΡ ΠΊΠ»ΠΎΠ½ΠΈΠΌ: ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π²Π΅Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ Π²Π»Π°Π΄Π΅ΡΡ ΡΠ°ΠΌΠΎΠ»Π΅ΡΠΎΠΌ! Π Π΄Π»Ρ ΠΏΠΈΠ»ΠΎΡΠ° ΡΠ°ΠΌΠΎΠ»Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΌΠ°ΡΠΈΠ½Π°, ΡΠΏΠΎΡΠΎΠ±Π½Π°Ρ Π²Π·Π»Π΅ΡΠ°ΡΡ, ΡΠ°Π΄ΠΈΡΡΡΡ, Π½Π°Π±ΠΈΡΠ°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ. ΠΠ»Ρ ΡΠΈΠ½Π°Π½ΡΠΈΡΡΠ° ΡΡΠΎ ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ, ΠΈΠΌΠ΅ΡΡΠ΅Π΅ (ΠΎΡΠ΅Π½Ρ Π²ΡΡΠΎΠΊΡΡ) ΡΠ΅Π½Ρ ΠΏΠΎΠΊΡΠΏΠΊΠΈ, (ΡΠ»ΠΈΡΠΊΠΎΠΌ Π½ΠΈΠ·ΠΊΡΡ) ΡΠ΅Π½Ρ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ, ΠΈ Π²ΡΠ½ΡΠΆΠ΄Π°ΡΡΠ΅Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΠΎ ΠΏΠ»Π°ΡΠΈΡΡ ΠΏΠΎ ΠΊΡΠ΅Π΄ΠΈΡΡ.
ΠΠ»Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ½ΡΡΠΈΡ "ΡΠ°ΠΌΠΎΠ»Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ" ΠΏΡΠΈΠ±Π΅Π³Π½Π΅ΠΌ ΠΊ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ:
Π ΠΈΡ. 15.3. Π‘Π°ΠΌΠΎΠ»Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ
class COMPANY_PLANE inherit
PLANE
ASSET
feature
... ΠΡΠ±ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠΉ Π΄Π»Ρ ΡΠ°ΠΌΠΎΠ»Π΅ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ,
(ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΉΡΡ ΠΎΡ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ) ...
end
Π ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ ΠΊΠ»Π°ΡΡΠ° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ inherit. (ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ ΠΈΡ ΠΈΠΌΠ΅Π½Π° ΡΠΎΡΠΊΠΎΠΉ Ρ Π·Π°ΠΏΡΡΠΎΠΉ, Ρ ΠΎΡΡ ΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.) ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π΅ ΠΈΠ³ΡΠ°Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠΎΠ»ΠΈ.
Π ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌ Π½Π°ΠΉΠ΄Π΅ΡΡΡ Π΅ΡΠ΅ Π½Π΅ΠΌΠ°Π»ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ COMPANY_PLANE.
[x]. ΠΠ°ΡΡΡΠ½ΡΠ΅ ΡΠ°ΡΡ-ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΡΡΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΄ΠΈΠ½ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΈ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° ΡΠ°ΠΊΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈ ΡΠ΅ΠΊΡΡΠ°Ρ Π΄Π°ΡΠ°. ΠΡΡΠ³ΠΎΠΉ - ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ - ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
[x]. ΠΠ°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠΌ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΡΠ΄Π½ΠΎ ΠΈ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°ΠΌΡΠΈΠ±ΠΈΡ (AMPHIBIOUS_VEHICLE). ΠΠ°ΡΠ»Π΅Π΄Π½ΠΈΠΊ ΠΊΠ»Π°ΡΡΠΎΠ²: ΡΡΠ΄Π½ΠΎ, ΡΠ°ΠΌΠΎΠ»Π΅Ρ - Π³ΠΈΠ΄ΡΠΎΡΠ°ΠΌΠΎΠ»Π΅Ρ (HYDROPLANE). (ΠΠ°ΠΊ ΠΈ Ρ TEACHING_ASSISTANT, Π·Π΄Π΅ΡΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΡΠ±Π»ΠΈΡΡΠ΅ΠΌΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠ»Π°ΡΡΠΎΠ²-ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠΌ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΠ΅ΡΠ΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ VEHICLE.)
[x]. Π£ΠΆΠΈΠ½ Π² ΡΠ΅ΡΡΠΎΡΠ°Π½Π΅; ΠΏΠΎΠ΅Π·Π΄ΠΊΠ° Π² Π²Π°Π³ΠΎΠ½Π΅ ΠΏΠΎΠ΅Π·Π΄Π° - Π²Π°Π³ΠΎΠ½-ΡΠ΅ΡΡΠΎΡΠ°Π½ (EATING_CAR). ΠΠ°ΡΠΈΠ°Π½Ρ: ΡΠΏΠ°Π»ΡΠ½ΡΠΉ Π²Π°Π³ΠΎΠ½ (SLEEPING_CAR).
[x]. ΠΠΈΠ²Π°Π½-ΠΊΡΠΎΠ²Π°ΡΡ (SOFA_BED), Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΠ°ΡΡ, Π½ΠΎ ΠΈ ΡΠΏΠ°ΡΡ.
[x]. "ΠΠΎΠΌ Π½Π° ΠΊΠΎΠ»Π΅ΡΠ°Ρ " (MOBILE_HOME) - Π²ΠΈΠ΄ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ° (VEHICLE) ΠΈ ΠΆΠΈΠ»ΠΈΡΠ΅ (HOUSE) ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ; ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ - Π½Π°ΠΌ ΠΏΠ»Π°ΡΡΡ Π·Π° ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌ, Π° Π½Π΅ Π·Π° ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΈΡΠ°. ΠΠΏΡΠΎΡΠ΅ΠΌ, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠΌΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΡ ΠΏΠΎΠ½ΡΡΠΈΠΉ Π²Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΎΠ»ΠΊΠ½Π΅ΡΠ΅ΡΡ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ· Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ISE ΠΌΡ ΠΈΠ·Π»ΠΎΠΆΠΈΠΌ ΡΡΡΡ Π½ΠΈΠΆΠ΅.
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΈ ΡΡΠ°Π²Π½ΠΈΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΠ-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π½Π΅ΡΠ°Π·ΡΡΠ²Π½ΠΎ ΡΠ²ΡΠ·Π°Π½ Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Kernel.
Π ΡΠ΄ ΠΊΠ»Π°ΡΡΠΎΠ² Kernel, ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π²ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ, ΡΡΠ΅Π±ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ°ΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΈ, ΠΊΠ°ΠΊ infix "+", infix "-", infix "*", prefix "-", Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ zero (Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π³ΡΡΠΏΠΏΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ "+") ΠΈ one (Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π³ΡΡΠΏΠΏΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ "*"). ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Kernel: INTEGER, REAL ΠΈ DOUBLE. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΎΠ½ΠΈ Π½ΡΠΆΠ½Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ, Π·Π°ΡΠ°Π½Π΅Π΅ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΊΠ»Π°ΡΡΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ»Π°ΡΡΡ MATRIX, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°. ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ ΡΠΌΠ΅ΡΡΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π² ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ NUMERIC, ΡΠ²Π»ΡΡΡΠ΅ΠΌΡΡ ΡΠ°ΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Kernel:
deferred class NUMERIC feature
... infix "+", infix "-", infix "*", prefix "-", zero, one...
end
NUMERIC ΠΈΠΌΠ΅Π΅Ρ ΡΡΡΠΎΠ³ΠΎΠ΅ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅. ΠΠ³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΡΠ»ΡΠΆΠ°Ρ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ»ΡΡΠ° (ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Ρ Π΄Π²ΡΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ½Π΄ΡΡΠΈΡΡΠ΅Ρ Π½Π° Π½Π΅ΠΌ Π³ΡΡΠΏΠΏΡ, ΠΏΡΠΈΡΠ΅ΠΌ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΊΠΎΠΌΠΌΡΡΠ°ΡΠΈΠ²Π½Π°, Π° Π²ΡΠΎΡΠ°Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½Π° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΉ).
ΠΠ½ΠΎΠ³ΠΈΠΌ ΠΊΠ»Π°ΡΡΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ° Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². Π’Π°ΠΊΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΎΠ² Kernel, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ STRING, ΠΈ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ Π² ΡΠΎΡΡΠ°Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π²Ρ ΠΎΠ΄ΠΈΡ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ COMPARABLE:
deferred class COMPARABLE feature
... infix "<", infix "<=", infix ">", infix ">="...
end
ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ - ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ.
ΠΠ΅ Π²ΡΠ΅ ΠΏΠΎΡΠΎΠΌΠΊΠΈ COMPARABLE Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠ°ΠΌΠΈ NUMERIC. Π ΠΊΠ»Π°ΡΡΠ΅ STRING Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ° Π½Π΅ Π½ΡΠΆΠ½Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½ΡΠΆΠ΅Π½ ΠΏΠΎΡΡΠ΄ΠΎΠΊ. ΠΠ±ΡΠ°ΡΠ½ΠΎ, Π½Π΅ Π²ΡΠ΅ ΠΏΠΎΡΠΎΠΌΠΊΠΈ NUMERIC Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠ°ΠΌΠΈ COMPARABLE. Π’Π°ΠΊ, Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ ΠΌΠ°ΡΡΠΈΡ Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠ°ΠΌΠΈ Π΅ΡΡΡ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΅Π΄ΠΈΠ½ΠΈΡΠ°, Π½ΡΠ»Ρ, ΡΡΠΎ ΠΏΡΠΈΠ΄Π°Π΅Ρ Π΅ΠΉ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΊΠΎΠ»ΡΡΠ°, Π½ΠΎ Π½Π΅Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ°. ΠΠΎΡΡΠΎΠΌΡ COMPARABLE ΠΈ NUMERIC Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ°Π²Π°ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ, ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠΌ Π΄ΡΡΠ³ΠΎΠ³ΠΎ.
ΠΠ±ΡΠ΅ΠΊΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΠΏΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΈΠΌΠ΅ΡΡ ΡΠΈΡΠ»ΠΎΠ²ΡΡ ΠΏΡΠΈΡΠΎΠ΄Ρ ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅. (Π’Π°ΠΊΠΈΠ΅ ΠΊΠ»Π°ΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΠ»ΡΡΠ°.) ΠΡΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² - REAL ΠΈ INTEGER. Π¦Π΅Π»ΡΠ΅ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ, ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΈ ΡΠΌΠ½ΠΎΠΆΠ°ΡΡ. ΠΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ:
expanded class REAL inherit
NUMERIC
COMPARABLE
feature
...
end
Π ΠΈΡ. 15.4. Π‘ΡΡΡΠΊΡΡΡΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΠΎΠ³ΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΊΠ½Π° - ΡΡΠΎ Π΄Π΅ΡΠ΅Π²ΡΡ ΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΠΊΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠΊΠΎΠ½:
Π ΠΈΡ. 15.5. ΠΠΊΠ½Π° ΠΈ ΠΏΠΎΠ΄ΠΎΠΊΠ½Π°
Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΊΠ»Π°ΡΡΠ΅ WINDOW ΠΌΡ Π½Π°ΠΉΠ΄Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄Π²ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²ΠΈΠ΄ΠΎΠ²:
[x]. ΡΠ΅, ΡΡΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΎΠΊΠ½ΠΎ ΠΊΠ°ΠΊ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ (ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄ΠΎΠΊΠΎΠ½, ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ΄ΠΎΠΊΠΎΠ½, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ, ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΠΎΠ΄ΠΎΠΊΠ½ΠΎ);
[x]. ΡΠ΅, ΡΡΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΎΠΊΠ½ΠΎ ΠΊΠ°ΠΊ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ (Π²ΡΡΠΎΡΠ°, ΡΠΈΡΠΈΠ½Π°, ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ, ΡΠΏΡΡΡΠ°ΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ ΠΎΠΊΠ½ΠΎ).
ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅, ΡΠΌΠ΅ΡΠ°Π² Π²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠ°ΠΌΡΠΌ ΡΠ΄Π°ΡΠ½ΡΠΌ. ΠΠ»Π°ΡΡ WINDOW ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ Π΄Π²ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ:
[x]. ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ»Π°ΡΡΠΎΠΌ TREE;
[x]. ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠΎΠΌ RECTANGLE.
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΊΠ»Π°ΡΡ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ ΡΠ°ΠΊ:
class WINDOW inherit
TREE [WINDOW]
RECTANGLE
feature
... Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΎΠΊΠ½Π° ...
end
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ»Π°ΡΡ TREE ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ΄ΠΎΠ²ΡΠΌ (generic) ΠΊΠ»Π°ΡΡΠΎΠΌ, Π° ΠΏΠΎΡΠΎΠΌΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, Π·Π΄Π΅ΡΡ - ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° WINDOW. Π Π΅ΠΊΡΡΡΠΈΠ²Π½Π°Ρ ΠΏΡΠΈΡΠΎΠ΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡΡΠ°ΠΆΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΠΈΡ, ΠΏΡΠΈΡΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ, - ΠΎΠΊΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄Π΅ΡΠ΅Π²ΠΎΠΌ ΠΎΠΊΠΎΠ½.
ΠΠ°Π»Π΅Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΎΠΊΠ½Π° Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π½ΠΈΡΠ΅Π³ΠΎ, ΠΊΡΠΎΠΌΠ΅ ΡΠ΅ΠΊΡΡΠ°. ΠΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ ΠΎΠΊΠΎΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ² ΠΊΠ»Π°ΡΡ TEXT_WINDOW ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΊΠ»Π°ΡΡΠ° STRING, Π²Π²Π΅Π΄Ρ Π°ΡΡΠΈΠ±ΡΡ
text: STRING
ΠΡΠ΅Π΄ΠΏΠΎΡΡΠ΅ΠΌ, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π²Π°ΡΠΈΠ°Π½Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΡΡΠΎΠΊΠΎΠΉ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΌΠΈ WINDOW ΠΈ STRING. (ΠΡΠ»ΠΈ ΠΆΠ΅ Π²ΡΠ΅ Π½Π°ΡΠΈ ΠΎΠΊΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π»ΠΈΡΡ ΡΠ΅ΠΊΡΡ, ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΡΠΌΡΠΌΠΈ ΠΏΠΎΡΠΎΠΌΠΊΠ°ΠΌΠΈ TREE, RECTANGLE ΠΈ STRING, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈ Π·Π΄Π΅ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ "Π² Π΄Π²Π° Ρ ΠΎΠ΄Π°" Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ.)