ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ²
Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, ΡΠ΅ΡΠ°Π΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² Π½Π΅Π΅ ΠΊΠ»Π°ΡΡΡ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΡ . ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠ΅ — ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², Ρ. Π΅. Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅ΠΌΡΡ ΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ — ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΡ «ΠΈΠΌΠ΅Π΅Ρ» (has-a) ΠΈ «Π²ΠΊΠ»ΡΡΠ°Π΅Ρ», ΠΈΠ½Π°ΡΠ΅ «ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ» (is-part-of). Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ, ΠΏΡΠΈ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ² (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ²
Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, ΡΠ΅ΡΠ°Π΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² Π½Π΅Π΅ ΠΊΠ»Π°ΡΡΡ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΡ . ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠ΅ — ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², Ρ. Π΅. Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅ΠΌΡΡ ΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ — ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΡ «ΠΈΠΌΠ΅Π΅Ρ» (has-a) ΠΈ «Π²ΠΊΠ»ΡΡΠ°Π΅Ρ», ΠΈΠ½Π°ΡΠ΅ «ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ» (is-part-of).
Π ΡΠ΅ΠΎΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠ°Π·Π»ΠΈΡΠ°ΡΡ Π΄Π²Π΅ ΡΠΎΡΠΌΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ — ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈΡ.
ΠΡΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π·Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π²Ρ ΠΎΠ΄ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Ρ Π² ΠΎΠ±ΡΠ΅ΠΊΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ (Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ) ΠΊΠ»Π°ΡΡΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π±Π΅Π· Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
ΠΡΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ², Ρ. Π΅. ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ Π² Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΡΠΈ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²Ρ ΠΎΠ΄ΠΈΠ²ΡΠΈΠ΅ Π² Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ C# ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ.
ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° 1301.cs) ΠΊΠ»Π°ΡΡ «ΡΠΎΡΠΊΠ° Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ»:
class Point.
{
double Ρ , Ρ;
public double X {get {return x;} set {x = value;}} public double Y {get {return y;} set {y = value;}}.
}
Π ΠΊΠ»Π°ΡΡΠ΅ Π·Π°ΠΊΡΡΡΡΠ΅ ΠΏΠΎΠ»Ρ double Ρ , Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠΊΠΈ. Π‘Π²ΠΎΠΉΡΡΠ²Π° X ΠΈ Y ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ΄ΠΎΠ±Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌ ΡΠΎΡΠΊΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ° Point. Π ΠΊΠ»Π°ΡΡΠ΅ Point Π½Π΅Ρ ΡΠ²Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°, ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ — ΠΎΡΠΊΡΡΡΡΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΡΠΎΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π½ΡΠ»Π΅Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ±ΡΠ΅ΠΊΡΡ ΠΊΠ»Π°ΡΡΠ° Point ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ. ΠΠΎΠ·ΡΠΌΠ΅ΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΊΠ»Π°ΡΡ Circle, ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ «ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ». ΠΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point (ΡΠΎΡΠΊΡ) Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π½ΡΡΠ° ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ.
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ, ΠΎΡΠ»ΠΎΠΆΠΈΠ² ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ, Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ°:
class Circle.
{ // ΠΠ°ΠΊΡΡΡΡΠ΅ ΠΏΠΎΠ»Ρ:
double rad; 11 ΡΠ°Π΄ΠΈΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ Point centre = new Point (); // ΡΠ΅Π½ΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ H Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠ°Π΄ΠΈΡΡΠ° ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ: public double Rad {.
get { return rad; } set { rad = value; }.
}
// Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»ΠΈΠ½Ρ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ:
public double Len { get { return 2 * rad * Math. PI; } }.
// Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠ΅Π½ΡΡΠ° ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ: public Point Centre {.
get { return centre; } set { centre = value; }.
}
public void display ().
{
Console.WriteLine («Centre: X={0}, Y={1};» .
+ «Radius={2}, Length ={ 3, 6: f2}», centre. X, centre. Y, this. rad, Len);
} }
Π ΠΊΠ»Π°ΡΡΠ΅ Circle Π΄Π²Π° Π·Π°ΠΊΡΡΡΡΡ ΠΏΠΎΠ»Ρ: double rad — ΡΠ°Π΄ΠΈΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ ΠΈ Point centre — ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point. ΠΠ»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ new, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ²Π½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΠΊΠ»Π°ΡΡΠ° Point. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° «ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ» Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π΅Π³ΠΎ ΠΏΠΎΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡ «ΡΠΎΡΠΊΠ°», ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ ΡΠ΅Π½ΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ.
Π’ΡΠΈ ΠΎΡΠΊΡΡΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ: Rad — ΡΠ°Π΄ΠΈΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ, Len — Π΄Π»ΠΈΠ½Π° ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ, Centre — ΡΠ΅Π½ΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ.
Π ΠΊΠ»Π°ΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΎΡΠΊΡΡΡΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ displayO, Π²ΡΠ²ΠΎΠ΄ΡΡΠΈΠΉ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ΅Π½ΡΡΠ° ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΊΠ»Π°ΡΡΠ΅ Circle Π½Π΅Ρ ΡΠ²Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ², ΡΠΎ Π½Π΅ΡΠ²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΈ ΠΏΠΎΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ Ρ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠΎΠ·Π΄Π°Π½ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Circle. ΠΠ°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΊΠ»Π°ΡΡΠΎΠ² Circle ΠΈ Point ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ. ΠΠ΅ΡΠΎΠ΄ displayO Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
static void Main ().
{
Circle rim = new CircleQ; rim.Centre.X = 10; rim.Centre.Y = 20; rim. Rad = 3.0; rim. display ();
}
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
Centre: X=10, Y=20; Radius=3, Length= 18,85.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅, Π½Π° ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, — Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° Point. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point ΡΠ²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° Circle.
ΠΠ° ΡΠΈΡ. 13.1 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΊΠ»Π°ΡΡΠΎΠ², Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΡ ΡΡ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ. ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π½Π° ΡΡ Π΅ΠΌΠ°Ρ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ. Π’ΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Ρ centre ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° Circle, Π½ΠΈΠΊΠ°ΠΊ ΡΠ²Π½ΠΎ Π½Π΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½.
Π ΠΈΡ. 73.7. ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΊΠ»Π°ΡΡ Point, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΊΠ»Π°ΡΡ «ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π³ΡΠ΅Π³Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° 132.cs):
class Circle { // ΠΠ°ΠΊΡΡΡΡΠ΅ ΠΏΠΎΠ»Ρ:
double rad; // ΡΠ°Π΄ΠΈΡΡ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΠΈ Point centre; 11 ΡΡΡΠ»ΠΊΠ° Π±Π΅Π· ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ public Circle (Point Ρ, double rd) 11 ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ {
centre = p; rad = rd;
}
public double Rad (…) public double Len {…} public Point Centre {…} public void display () {…}.
}
Π ΡΠ΅ΠΊΡΡΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° Circle ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ — ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point. Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΌΠ΅ΡΠΎΠ΄ displayO ΠΎΡΡΠ°Π»ΠΈΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° Circle Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ, ΡΡΠΎΠ±Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π» ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ ΠΊΠ»Π°ΡΡΠ° Circle Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ centre.
ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΊΠ»Π°ΡΡΠΎΠ², Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΡ ΡΡ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ (ΡΠΈΡ. 13.2), ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ° ΠΆΠ΅, ΡΡΠΎ ΠΈ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ. Π’ΠΎΠ»ΡΠΊΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅ Circle ΡΠ²Π½ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΎΠ±ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°.
Puc. 13.2. ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ².
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ (Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ Main) ΡΠΎΠ·Π΄Π°Π½ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point. ΠΠ°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ² X ΠΈ Y ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ. ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠ»Π°ΡΡΠ° Circle ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ «ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ». ΠΠ΅ΡΠΎΠ΄ displayO Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
static void Main ().
{
Point pt = new PointQ; pt. X = 10; pt. Y = 20;
Circle rim = new Circle (pt, 10); rim. displayO;
}
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
Centre: X=10, Y=20; Radius=10, Length=62,83.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ, ΠΏΡΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅ Circle Π½Π΅Ρ ΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»Ρ centre. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° Point Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Circle Π² ΠΊΠ»Π°ΡΡΠ΅ Circle ΡΠ²Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ»ΡΠΆΠΈΡ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point. Π ΡΠ΅Π»Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»Ρ centre ΠΊΠ»Π°ΡΡΠ° Circle.