ВУЗ:
Составители:
Рубрика:
public:
TPoint a,b; /* ɥɟɜɵɣ ɜɟɪɯɧɢɣ ɢ ɩɪɚɜɵɣ ɧɢɠɧɢɣ ɭɝɥɵ
ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ ɫɨɨɬɜɟɬɫɬɜɟɧɧɨ */
void move(int dx, int dy) /* ɩɟɪɟɦɟɳɟɧɢɟ
ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ */
{a.relmove(dx, dy); b.relmove(dx, dy);}
void grow(int dx, int dy) // ɢɡɦɟɧɟɧɢɟ ɪɚɡɦɟɪɨɜ
{a.x+=dx; a.y+=dy; b.x+=dx; b.y+=dy;}
void intersect(const TRect& r);
// ɨɛɳɚɹ ɱɚɫɬɶ ɞɜɭɯ ɩɪɹɦɨɭɝɨɥɶɧɢɤɨɜ
void Union(const TRect& r);
// ɩɪɹɦɨɭɝɨɥɶɧɢɤ, ɨɯɜɚɬɵɜɚɸɳɢɣ ɞɜɚ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ
Boolean contains(const TPoint& p);
// TRUE, ɟɫɥɢ ɬɨɱɤɚ p ɩɪɢɧɚɞɥɟɠɢɬ ɩɪɹɦɨɭɝɨɥɶɧɢɤɭ
Boolean isEmpty();
//TRUE, ɟɫɥɢ ɲɢɪɢɧɚ ɢɥɢ ɜɵɫɨɬɚ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ ɪɚɜɧɵ ɧɭɥɸ
TRect(int ax, int ay, int bx, int by) // ɤɨɧɫɬɪɭɤɬɨɪ
{a.x=ax; a.y=ay; b.x=bx; b.y=by;};
TRect (TPoint p1, TPoint p2) // ɤɨɧɫɬɪɭɤɬɨɪ
{a=p1; b=p2;};
TRect() // ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ
{a.x=a.y=b.x=b.y=0;};
};
/* Ɇɟɬɨɞɵ ɤɥɚɫɫɚ TRect */
void TRect::intersect(const TRect& r)
{
a.x=max(a.x, r.a.x); b.x=min(b.x, r.b.x);
a.y=max(a.y, r.a.y); b.y=min(b.y, r.b.y);
};
void TRect::Union(const TRect& r)
{a.x=(a.x<=r.a.x)?a.x:r.a.x;
a.y=(a.y<=r.a.y)?a.y:r.a.y;
b.x=(b.x>=r.b.x)?b.x:r.b.x;
b.y=(b.y>=r.b.y)?b.y:r.b.y;
};
Boolean TRect::contains(const TPoint& p)
{
return Boolean(p.x>=p.x&&p.x<b.x&&p.y>=a.y&&p.y<b.y);
}
Boolean TRect::isEmpty()
{return Boolean(a.x>=b.x||a.y>=b.y);};
Ȼɨɥɟɟ ɩɨɥɧɚɹ ɢɧɮɨɪɦɚɰɢɹ ɨ ɤɨɧɫɬɪɭɤɬɨɪɚɯ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ ɩɪɢɜɟɞɟ-
ɧɚ ɜ ɫɥɟɞɭɸɳɟɦ ɪɚɡɞɟɥɟ.
Ɉɛɴɹɜɥɟɧɢɟ ɩɟɪɟɦɟɧɧɨɣ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɫɬɪɨɢɬɫɹ ɩɨ ɨɛɳɢɦ ɩɪɚɜɢ-
ɥɚɦ, ɧɨ ɡɚ ɢɞɟɧɬɢɮɢɤɚɬɨɪɨɦ ɩɟɪɟɦɟɧɧɨɣ ɦɨɠɧɨ ɭɤɚɡɚɬɶ ɜ ɫɤɨɛɤɚɯ ɚɪɝɭ-
ɦɟɧɬɵ ɨɩɪɟɞɟɥɟɧɧɨɝɨ ɜ ɤɥɚɫɫɟ ɤɨɧɫɬɪɭɤɬɨɪɚ, ɧɚɩɪɢɦɟɪ:
TRect r1(2,4,20,50); /* ɢɧɢɰɢɚɥɢɡɚɰɢɹ ɫ ɢɫɩɨɥɶɡɨɜɚɧɢɟɦ
ɩɟɪɜɨɝɨ ɤɨɧɫɬɪɭɤɬɨɪɚ */
TRect *pr=&r1; // ɭɤɚɡɚɬɟɥɶ ɧɚ TRect
43
public: TPoint a,b; /* ɥɟɜɵɣ ɜɟɪɯɧɢɣ ɢ ɩɪɚɜɵɣ ɧɢɠɧɢɣ ɭɝɥɵ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ ɫɨɨɬɜɟɬɫɬɜɟɧɧɨ */ void move(int dx, int dy) /* ɩɟɪɟɦɟɳɟɧɢɟ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ */ {a.relmove(dx, dy); b.relmove(dx, dy);} void grow(int dx, int dy) // ɢɡɦɟɧɟɧɢɟ ɪɚɡɦɟɪɨɜ {a.x+=dx; a.y+=dy; b.x+=dx; b.y+=dy;} void intersect(const TRect& r); // ɨɛɳɚɹ ɱɚɫɬɶ ɞɜɭɯ ɩɪɹɦɨɭɝɨɥɶɧɢɤɨɜ void Union(const TRect& r); // ɩɪɹɦɨɭɝɨɥɶɧɢɤ, ɨɯɜɚɬɵɜɚɸɳɢɣ ɞɜɚ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ Boolean contains(const TPoint& p); // TRUE, ɟɫɥɢ ɬɨɱɤɚ p ɩɪɢɧɚɞɥɟɠɢɬ ɩɪɹɦɨɭɝɨɥɶɧɢɤɭ Boolean isEmpty(); //TRUE, ɟɫɥɢ ɲɢɪɢɧɚ ɢɥɢ ɜɵɫɨɬɚ ɩɪɹɦɨɭɝɨɥɶɧɢɤɚ ɪɚɜɧɵ ɧɭɥɸ TRect(int ax, int ay, int bx, int by) // ɤɨɧɫɬɪɭɤɬɨɪ {a.x=ax; a.y=ay; b.x=bx; b.y=by;}; TRect (TPoint p1, TPoint p2) // ɤɨɧɫɬɪɭɤɬɨɪ {a=p1; b=p2;}; TRect() // ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ {a.x=a.y=b.x=b.y=0;}; }; /* Ɇɟɬɨɞɵ ɤɥɚɫɫɚ TRect */ void TRect::intersect(const TRect& r) { a.x=max(a.x, r.a.x); b.x=min(b.x, r.b.x); a.y=max(a.y, r.a.y); b.y=min(b.y, r.b.y); }; void TRect::Union(const TRect& r) {a.x=(a.x<=r.a.x)?a.x:r.a.x; a.y=(a.y<=r.a.y)?a.y:r.a.y; b.x=(b.x>=r.b.x)?b.x:r.b.x; b.y=(b.y>=r.b.y)?b.y:r.b.y; }; Boolean TRect::contains(const TPoint& p) { return Boolean(p.x>=p.x&&p.x=a.y&&p.y =b.x||a.y>=b.y);}; Ȼɨɥɟɟ ɩɨɥɧɚɹ ɢɧɮɨɪɦɚɰɢɹ ɨ ɤɨɧɫɬɪɭɤɬɨɪɚɯ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ ɩɪɢɜɟɞɟ- ɧɚ ɜ ɫɥɟɞɭɸɳɟɦ ɪɚɡɞɟɥɟ. Ɉɛɴɹɜɥɟɧɢɟ ɩɟɪɟɦɟɧɧɨɣ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɫɬɪɨɢɬɫɹ ɩɨ ɨɛɳɢɦ ɩɪɚɜɢ- ɥɚɦ, ɧɨ ɡɚ ɢɞɟɧɬɢɮɢɤɚɬɨɪɨɦ ɩɟɪɟɦɟɧɧɨɣ ɦɨɠɧɨ ɭɤɚɡɚɬɶ ɜ ɫɤɨɛɤɚɯ ɚɪɝɭ- ɦɟɧɬɵ ɨɩɪɟɞɟɥɟɧɧɨɝɨ ɜ ɤɥɚɫɫɟ ɤɨɧɫɬɪɭɤɬɨɪɚ, ɧɚɩɪɢɦɟɪ: TRect r1(2,4,20,50); /* ɢɧɢɰɢɚɥɢɡɚɰɢɹ ɫ ɢɫɩɨɥɶɡɨɜɚɧɢɟɦ ɩɟɪɜɨɝɨ ɤɨɧɫɬɪɭɤɬɨɪɚ */ TRect *pr=&r1; // ɭɤɚɡɚɬɟɥɶ ɧɚ TRect 43
Страницы
- « первая
- ‹ предыдущая
- …
- 41
- 42
- 43
- 44
- 45
- …
- следующая ›
- последняя »