Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class Punkt
- {
- friend ostream& operator<<(ostream&, const Punkt&);
- double X;
- double Y;
- public:
- Punkt(double, double);
- };
- class Kwadrat
- {
- friend Kwadrat operator+(const Kwadrat, const Kwadrat);
- friend Kwadrat operator-(const Kwadrat, const Kwadrat);
- friend ostream& operator<<(ostream&, const Kwadrat&);
- Punkt LewoGora;
- double Bok;
- public:
- Kwadrat(Punkt, double);
- };
- Punkt::Punkt(double x, double y) : X(x), Y(y) {}
- Kwadrat operator+(const Kwadrat A, const Kwadrat B)
- {
- return Kwadrat(A.LewoGora, A.Bok + B.Bok);
- }
- Kwadrat operator-(const Kwadrat A, const Kwadrat B)
- {
- double roznica = A.Bok - B.Bok;
- if(roznica < 0)
- roznica *= -1;
- return Kwadrat(B.LewoGora, roznica);
- }
- ostream& operator<<(ostream& os, const Punkt& p)
- {
- os << '(' << p.X << ',' << p.Y << ')';
- return os;
- }
- ostream& operator<<(ostream& os, const Kwadrat& kw)
- {
- os << "Kwadrat o lewym gornym boku " << kw.LewoGora << " i boku o dlugosci " << kw.Bok;
- return os;
- }
- Kwadrat::Kwadrat(Punkt p, double b) : LewoGora(p), Bok(b) {}
- int main()
- {
- double Ax, Ay, Bx, By, K1y, K2y;
- cout << "Podaj wspolrzedne punktu A: ";
- cin >> Ax >> Ay;
- cout << "Podaj wspolrzedne punktu B: ";
- cin >> Bx >> By;
- cout << "Podaj dlugosc boku kwadratu 1: ";
- cin >> K1y;
- cout << "Podaj dlugosc boku kwadratu 2: ";
- cin >> K2y;
- Punkt A(Ax, Ay);
- Punkt B(Bx, By);
- Kwadrat k1(A, K1y);
- Kwadrat k2(B, K2y);
- Kwadrat ks1 = k1 + k2;
- cout << ks1 << endl;
- Kwadrat ks2 = k2 + k1;
- cout << ks2 << endl;
- Kwadrat kr1 = k1 - k2;
- cout << kr1 << endl;
- Kwadrat kr2 = k2 - k1;
- cout << kr2 << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment