ΠΡΠ°ΡΠΈΠΊΠ° Π’ΡΡΠ±ΠΎ ΠΠ°ΡΠΊΠ°Π»Ρ
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΠ±ΡΠΈΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π΄Π΅Π»ΠΎΠ²ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ, Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΆΠ΅Π»Π°ΡΡ Π»ΡΡΡΠ΅Π³ΠΎ. ΠΠ΅Π»ΡΠ·Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΌΠΈ ΡΠΏΡΠ°ΠΉΡΠ°ΠΌΠΈ, Π½Π΅Ρ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π° ΡΠΊΡΠ°Π½Π°, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ / Π²ΡΠ²ΠΎΠ΄Π° Π²ΡΠ΅Π³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΠΈΡΠΎΠ²ΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄ΡΡΠ³ΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ … Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΡΠ°ΡΠΈΠΊΠ° Π’ΡΡΠ±ΠΎ ΠΠ°ΡΠΊΠ°Π»Ρ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π’ΡΡΠ±ΠΎ ΠΠ°ΡΠΊΠ°Π»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² Π±Π»ΠΎΠΊΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ uses ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Graph. ΠΠΎΠ΄ΡΠ»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π°Π±ΠΎΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡ, ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π½ΠΈΠΆΠ΅.
ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ
Arc (x, y: integer; St, En, R: word); {ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΡΠ³ΠΈ, Π³Π΄Π΅ x, y — ΠΊΠΎΠΎΡΠ΄. ΡΠ΅Π½ΡΡΠ° Π΄ΡΠ³ΠΈ, R — ΡΠ°Π΄ΠΈΡΡ, St, En — Π½Π°Ρ. ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ³Π»Ρ. }
ClearDevice; {ΠΎΡΠΈΡΡΠΊΠ° ΡΠΊΡΠ°Π½Π°}
Circle (x, y: integer; R: word); {ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ ΡΠ°Π΄ΠΈΡΡΠ° R
cΡΠ΅Π½ΡΡΠΎΠΌ Π² ΡΠΎΡΠΊΠ΅ (x, y) }
CloseGraph; {Π·Π°ΠΊΡΡΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΈ}
InitGraph (gd, gm: integer; Path: string); {ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΈ, Π³Π΄Π΅
gd — Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ,
gm — Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ,
Path — ΠΏΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°
Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ. bgi. }
Line (x1,y1,x2,y2: integer); {ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡΠΎΡ ΠΎΠ΄ΡΡΠ΅ΠΉ ΡΠ΅ΡΠ΅Π· Π΄Π²Π΅ ΡΠΎΡΠΊΠΈ:
Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x1,y1) ΠΈ (x2,y2) }
LineRel (dx, dy: integer); {ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ: dx, dy — ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΡ
ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΊ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌ ΡΠ΅ΠΊΡΡΠ΅ΠΉ
ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΡΡΡΠΎΡΠ°}
LineTo (x, y: integer); {ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡΠΎΡ ΠΎΠ΄ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΊΡΡΡΡ
ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΊΡΡΡΠΎΡΠ° ΠΈ ΡΠΎΡΠΊΡ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y) }
Moveto (x, y: integer); {Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΈ}
OutText (T: string); {Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² ΡΠ΅ΠΊΡΡΡΡ ΡΠΎΡΠΊΡ}
OutTextXY (x, y: integer; T: string); {Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² ΡΠΎΡΠΊΡ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ Ρ , Ρ}
Rectangle (x1,y1,x2,y2: integer); {ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°: (x1,y1) ΠΈ (x2,y2) — ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡΡ Π²Π΅ΡΡΠΈΠ½}
PutPixel (x, y: integer; c: word); {Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΎΡΠΊΡ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (Ρ , Ρ) ΡΠ²Π΅ΡΠΎΠΌ Ρ}
ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
GetMaxX — ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΊΡΠ°Π½Π° ΠΏΠΎ ΠΎΡΠΈ x.
GetMaxY — ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΊΡΠ°Π½Π° ΠΏΠΎ ΠΎΡΠΈ y.
GetX — ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΡΡΡΠΎΡΠ° ΠΏΠΎ ΠΎΡΠΈ x.
GetY — ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΡΡΡΠΎΡΠ° ΠΏΠΎ ΠΎΡΠΈ y.
ΠΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ.
ΠΠ°ΡΠ°Π»ΠΎ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ΅ΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°ΡΠΈΠ½Π½Π°Ρ (xm, ym) ΠΈ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠ°Ρ (x, y) ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ. ΠΠ»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΡΠΎΡΠΊΠΈ Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y) Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π΅Π΅ ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ (xm, ym). Π Π°ΡΡΠ΅ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΡΠ»Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π²ΠΈΠ΄ (ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΈ ΡΠΎΡΠΌΡΠ»Ρ):
xm=x0+x*Mx,
ym=y0-y*My,
Π³Π΄Π΅ Mx, My-ΠΌΠ°ΡΡΡΠ°Π±Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎ ΠΎΡΡΠΌ x ΠΈ y, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠΈΡΠ»ΠΎ ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅,
x, y — ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠΊΠΈ,
xm, ym — ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠΊΠΈ,
x0, y0 — ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π½Π°ΡΠ°Π»Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ.
ΠΡΠΈΠΌΠ΅Ρ. ΠΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· Π²Π΅ΡΡ ΡΠΊΡΠ°Π½ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°ΡΡΠΈΠ΅ΡΡ Π² ΡΠ΅Π½ΡΡΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ°.
ΠΡΠ°ΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π±Π»ΠΈΡΡ.
Π’Π°Π±Π»ΠΈΡΠ°
N | ΠΡΠ°ΠΏΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ | ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ | |
1. | ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ | ΠΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· Π²Π΅ΡΡ ΡΠΊΡΠ°Π½ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°ΡΡΠΈΠ΅ΡΡ Π² ΡΠ΅Π½ΡΡΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ°. | |
2. | ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΠ·ΠΎΠ±ΡΠ°Π·ΠΈΠΌ Π²ΠΈΠ΄ ΡΠΊΡΠ°Π½Π° Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π»ΠΈΠ½ΠΈΠΉ | |
3. | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΡΡΠΊΡΠΎΠ³ΡΠ°ΠΌΠΌΡ | ||
4. | ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ | Program P5; Uses graph; {ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π³ΡΠ°Ρ. ΠΌΠΎΠ΄ΡΠ»Ρ} Var gd, gm: integer; Begin gd: =detect; {ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π³ΡΠ°Ρ. Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°} InitGraph (gd, gm,' `); {ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΈ} Line (0, round (GetMaxY/2), GetMaxX, Round (GetMaxY/2)); {Π³ΠΎΡΠΈΠ·. Π»ΠΈΠ½. } Line (round (GetMaxX/2), 0,Round (GetMaxX/2), GetMaxY); {Π²Π΅ΡΡΠΈΠΊ. Π»ΠΈΠ½. } Readln; {ΠΏΡΡΡΠΎΠΉ Π²Π²ΠΎΠ΄} CloseGraph; {Π·Π°ΠΊΡΡΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΈ} End. | |
5. | ΠΡΠ»Π°Π΄ΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² | ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ | |
ΠΡΠΈΠΌΠ΅Ρ. ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ y=x2 Π΄Π»Ρ xΒ· [-1; 1].
ΠΡΠ°ΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π±Π»ΠΈΡΡ.
Π’Π°Π±Π»ΠΈΡΠ°
N | ΠΡΠ°ΠΏΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ | ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ | |
1. | ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ | ΠΠΎΡΡΡΠΎΠΈΡΡ Π³ΡΠ°ΡΠΈΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ y=x2 Π΄Π»Ρ x? [-1; 1]. | |
2. | ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΠ·ΠΎΠ±ΡΠ°Π·ΠΈΠΌ Π²ΠΈΠ΄ ΡΠΊΡΠ°Π½Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. | |
3. | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΡΡΠΊΡΠΎΠ³ΡΠ°ΠΌΠΌΡ | ||
4. | ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ | Program P6; Uses graph; Var gd, gm: integer; x, y: real; x0,y0,xm, ym, Mx, My: integer; begin gd: =detect; InitGraph (gd, gm,' `); Mx: =300; x0: =320; My: =440; y0: =460; {Π²ΡΠ±ΡΠ°Π½Ρ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° 640Π§480 ΠΏΠΈΠΊΡ. } For xm: =20 to 620 do Begin x: = (xm-x0) /Mx; y: =sqr (x); ym: =round (y0-y*My); PutPixel (xm, ym, 1); End; Readln; CloseGraph; End. | |
5. | ΠΡΠ»Π°Π΄ΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² | ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ | |
ΠΠΎΠ΄ΡΠ»Ρ Graph
Π’Π ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠΌΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ VGA ΡΠΊΡΠ°Π½ΠΎΠΌ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΠΏΠΎΠ² Π²ΠΈΠ΄Π΅ΠΎΠ°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ²).
VGA Π°Π΄Π°ΠΏΡΠ΅Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 640×480 ΠΏΠΈΠΊΡΠ΅Π» (ΡΠΎΡΠΊΠ° (0,0) Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ ΡΠΊΡΠ°Π½Π°), 16 ΡΠ²Π΅ΡΠΎΠ².
ΠΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ, Π° ΠΏΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ — «Π·Π°ΠΊΡΡΡΡ». ΠΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ Graph, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅.
ΠΠ±ΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
Uses crt, graph;
var Gd, Gm: Integer;
begin
Gd: = Detect;
InitGraph (Gd, Gm, 'c: bpbgi');
…
{ΠΠ΄Π΅ΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ}
…
ReadKey;
CloseGraph;
end.
ΠΡΡΡ c: bpbgi ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° egavga. bgi (Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π΄Π°ΠΏΡΠ΅ΡΠ°). ΠΠ° ΡΠ°Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΡΡΠΎΡ ΠΏΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·Π½ΡΠΌ. ΠΡΠ»ΠΈ ΡΠ°ΠΉΠ» egavga. bgi ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ, ΡΠΎ ΠΏΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ:
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠΈΠ³ΡΡ
PutPixel (x, y, c) — ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΡΠΎΡΠΊΡ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y) ΠΈ ΡΠ²Π΅ΡΠΎΠΌ c
Line (x1,y1,x2,y2) — ΡΠΈΡΡΠ΅Ρ Π»ΠΈΠ½ΠΈΡ Ρ Π½Π°ΡΠ°Π»ΠΎΠΌ Π² ΡΠΎΡΠΊΠ΅ (x1,y1) ΠΈ ΠΊΠΎΠ½ΡΠΎΠΌ — (x2,y2)
Rectangle (x1,y1,x2,y2) — ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΡ (x1,y1) — (x2,y2)
Bar (x1,y1,x2,y2) — ΡΠΈΡΡΠ΅Ρ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΡ (x1,y1) — (x2,y2)
Circle (x, y, r) — ΡΠΈΡΡΠ΅Ρ ΠΎΠΊΡΡΠΆΠ½ΠΎΡΡΡ Ρ ΡΠ΅Π½ΡΡΠΎΠΌ (x, y) ΠΈ ΡΠ°Π΄ΠΈΡΡΠΎΠΌ r
Ellipse (x, y, ba, ea, xr, yr) — ΡΠΈΡΡΠ΅Ρ Π΄ΡΠ³Ρ ΡΠ»Π»ΠΈΠΏΡΠ° Ρ ΡΠ΅Π½ΡΡΠΎΠΌ Π² (x, y), Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π΄ΠΈΡΡΠΎΠΌ xr ΠΈ yr, ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ ΡΠ³Π»ΠΎΠΌ ba ΠΈ ea
FillEllipse (x, y, xr, yr) — ΡΠΈΡΡΠ΅Ρ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΉ ΡΠ»Π»ΠΈΠΏΡ Ρ ΡΠ΅Π½ΡΡΠΎΠΌ Π² (x, y), Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π΄ΠΈΡΡΠΎΠΌ xr ΠΈ yr
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠΎΠ² ΠΈ ΡΡΠΈΠ»Π΅ΠΉ
GetPixel (x, y) — Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ²Π΅Ρ ΠΏΠΈΠΊΡΠ΅Π»Π° Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y)
SetColor (c) — ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ²Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ (Π΄Π»Ρ Π»ΠΈΠ½ΠΈΠΉ)
SetFillStyle (p, c) — ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΡΠΈΠ»Ρ p ΠΈ ΡΠ²Π΅Ρ c (Π΄Π»Ρ «Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΡ » ΡΠΈΠ³ΡΡ)
FloodFill (x, y, b) — Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π·Π°ΠΌΠΊΠ½ΡΡΡΡ ΠΎΠ±Π»Π°ΡΡΡ Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ (x, y) ΠΈ ΡΠ²Π΅ΡΠΎΠΌ ΠΊΠΎΠ½ΡΡΡΠ° b
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ
OutTextXY (x, y, st) — Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½ ΡΡΡΠΎΠΊΡ st Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ (x, y)
SetTextStyle (f, d, s) — ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠΈΡΡ f, Π΅Π³ΠΎ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ d ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ
function GraphErrorMsg (ErrorCode: integer): String; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π΄Π»Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ErrorCode.
function GraphResult: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π°Π΄Π°ΠΏΡΠ΅ΡΠ°, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ
procedure DetectGraph (var GraphDriver, GraphMode: integer); ΠΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΡΡΡ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠ°ΠΊΠΎΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ (ΡΠΈΠΏ Π°Π΄Π°ΠΏΡΠ΅ΡΠ° — Π² GraphDriver, ΡΠ΅ΠΆΠΈΠΌ — GraphMode).
function GetDriverName: string; oΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°.
procedure InitGraph (var GraphDriver: integer; var GraphMode: integer; PathToDriver: String); ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ. PathToDriver — ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΡΡΡ ΠΊ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ. bgi, ΠΎΠ±ΡΡΠ½ΠΎ 'c: tpbgi'. ΠΡΠ»ΠΈ ΠΏΡΡΡ ΠΎΠΏΡΡΠ΅Π½ (''), ΡΠΎ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
function RegisterBGIfont (Font: pointer): integer; Π Π΅Π³ΠΈΡΡΡΠΈΡΡΠ΅Ρ ΡΡΠΈΡΡ BGI Π΄Π»Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΎΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Π²ΡΠ·ΠΎΠ²Π΅ SetTextStyle. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½ Ρ Π΄ΠΈΡΠΊΠ° Π² ΠΊΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π². obj ΡΠ°ΠΉΠ» (Ρ ΠΏΠΎΠΌΠΎΡΡΡ binobj. exe) ΠΈ ΡΠ²ΡΠ·Π°Π½ Π² ΡΠ°ΠΉΠ». exe. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
function RegisterBGIdriver (Driver: pointer): integer; Π Π΅Π³ΠΈΡΡΡΠΈΡΡΠ΅Ρ Π΄ΡΠ°ΠΉΠ²Π΅Ρ BGI Π΄Π»Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠΎΠΉ InitGraph. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½ Ρ Π΄ΠΈΡΠΊΠ° Π² ΠΊΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π². obj ΡΠ°ΠΉΠ» (Ρ ΠΏΠΎΠΌΠΎΡΡΡ binobj. exe) ΠΈ ΡΠ²ΡΠ·Π°Π½ Π² ΡΠ°ΠΉΠ». exe. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
function InstallUserDriver (DriverFileName: string; AutoDetectPtr: pointer): integer; Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² BGI ΡΠ°Π±Π»ΠΈΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΡΡΡΡΠΎΠΉΡΡΠ².
function InstallUserFont (FontFileName: string): integer; Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΡΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π²ΡΡΡΠΎΠ΅Π½ Π² BGI ΡΠΈΡΡΠ΅ΠΌΡ.
procedure SetGraphBufSize (BufSize: word); ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π±ΡΡΠ΅ΡΠ° Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (Π·Π°ΠΊΡΠ°ΡΠΎΠΊ). ΠΡΡΠ΅Ρ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ BufSize Π±Π°ΠΉΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΊΡΡΠ΅ ΠΏΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ InitGraph. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ 4Π, ΡΡΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° Ρ 650 Π»ΠΈΠ½ΠΈΡΠΌΠΈ.
function GetMaxMode: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°.
procedure GetModeRange (GraphDriver: integer; var LoMode, HiMode: integer); ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°.
function GetModeName (GraphMode: integer): string; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ°.
procedure SetGraphMode (Mode: integer); ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ ΠΈ ΠΎΡΠΈΡΠ°Π΅Ρ ΡΠΊΡΠ°Π½.
function GetGraphMode: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ.
procedure GraphDefaults; Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ (CP) Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ (Ρ.Π΅. ΡΠΎΡΠΊΡ 0,0) ΠΈ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠ΅ΠΆΠΈΠΌΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, Π² Ρ. Ρ. ΠΎΠΊΠ½Π°, ΠΏΠ°Π»ΠΈΡΡΡ, ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ²Π΅Ρ ΠΈ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΡΡΠΈΠ»Ρ Π»ΠΈΠ½ΠΈΠΉ, ΡΡΠΈΡΡ, Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ°, ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ ΡΡΠΈΠ»Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°. Π‘ΠΈΡΡΠ΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
procedure RestoreCrtMode; ΠΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ Π²ΠΈΠ΄Π΅ΠΎΡΠ΅ΠΆΠΈΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» Π΄ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΠ΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π±ΡΡΠ΅Ρ ΠΈ Π½Π΅ ΠΎΠ±Π½ΡΠ»ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
procedure CloseGraph; ΠΠ°ΠΊΡΡΠ²Π°Π΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ Π²ΠΈΠ΄Π΅ΠΎΡΠ΅ΠΆΠΈΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» Π΄ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π±ΡΡΠ΅Ρ ΠΈ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΡΡΡΠΎΡΠ°
function GetX: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ X ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ (CP).
function GetY: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Y ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ (Π‘Π ).
function GetMaxX: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π₯ (ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ) Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΠΈ ΡΠ΅ΠΆΠΈΠΌΠ°.
function GetMaxY: integer; ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Y (ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ) Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΠΈ ΡΠ΅ΠΆΠΈΠΌΠ°.
ΠΡΠ»ΠΈΡΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΈ Π’ΡΡΠ±ΠΎ-ΠΠ°ΡΠΊΠ°Π»Ρ ΠΈ Π’ΡΡΠ±ΠΎ-Π‘ΠΈ
Π’ΡΡΠ±ΠΎ-ΠΠ°ΡΠΊΠ°Π»Ρ Π½Π΅ ΡΠ°Π·Π»ΠΈΡΠ°Π΅Ρ ΠΎΡΠ»ΠΈΡΠΈΠΉ Π² ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ (ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠ΅ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ΅ Π±ΡΠΊΠ²Ρ) ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΡΠΈΠΏΠΎΠ², ΠΏΡΠΎΡΠ΅Π΄ΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Graph. Π Π’ΡΡΠ±ΠΎ-Π‘ΠΈ Π²ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΡΠΈΠΏΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅ (Π·Π°Π³Π»Π°Π²Π½ΡΠΌΠΈ Π±ΡΠΊΠ²Π°ΠΌΠΈ), Π° Π½Π°Π·Π²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ — Π² Π½ΠΈΠΆΠ½Π΅ΠΌ (ΠΏΡΠΎΠΏΠΈΡΠ½ΡΠΌΠΈ Π±ΡΠΊΠ²Π°ΠΌΠΈ). Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ.
ΠΠΠΠΠ‘Π’ΠΠ’ΠΠ BGI-ΠΠ ΠΠ€ΠΠΠ
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΠ±ΡΠΈΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π΄Π΅Π»ΠΎΠ²ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ, Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΆΠ΅Π»Π°ΡΡ Π»ΡΡΡΠ΅Π³ΠΎ. ΠΠ΅Π»ΡΠ·Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΌΠΈ ΡΠΏΡΠ°ΠΉΡΠ°ΠΌΠΈ, Π½Π΅Ρ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π° ΡΠΊΡΠ°Π½Π°, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ / Π²ΡΠ²ΠΎΠ΄Π° Π²ΡΠ΅Π³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΠΈΡΠΎΠ²ΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄ΡΡΠ³ΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ², ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Ρ. Π΄. ΠΡΠ΅ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π·Π°ΡΡΡΠ΄Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠ², ΠΈΠ³ΡΡΡΠ΅ΠΊ, ΡΠΈΡΡΠ΅ΠΌ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΠΎΠΉ ΠΈ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΡΠΌΠΎΠΉ Π΄ΠΎΡΡΡΠΏ Π² Π²ΠΈΠ΄Π΅ΠΎΠΏΠ°ΠΌΡΡΡ ΠΈ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ BIOS.