#include<iostream>
#include<cstdio>
using namespace std;
class Rectangle
{
    private:
    int l;
    int b;

    public:
    void setLength(int length)
    {
        if(length>=0)
        {
            l=length;
        }
        else
        {
            perror("Length can't be negative");
            l=0;
        }        
    }
    void setBreadth(int breadth)
    {
        if(breadth>=0)
        {    b=breadth;   }
        else
        {
            perror("Breadth can't be negative");
            b=0;
        }        
    }
    int getLength()
    {
        return l;
    }
    int getBreadth()
    {
        return b;
    }
    Rectangle()//Non-Paramaterized Constructor
    {
        l=0;
        b=0;
    }
    Rectangle(int length,int breadth)//Paramaterized Constructor
    {
        setLength(length);
        setBreadth(breadth);
    }
    Rectangle(Rectangle &r)//copy Constructor
    {
        l=r.l;
        b=r.b;
    }
    int area()
    {
        return l*b;
    }
    int perimeter()
    {
        return 2*(l+b);
    }
};
int main()
{
    Rectangle r;
    
    cout<<r.area()<<endl<<r.perimeter()<<endl;

    Rectangle a(10,5);
    cout<<a.area()<<endl<<a.perimeter()<<endl;

    Rectangle b(Rectangle a)
    cout<<b.area()<<endl<<b.parameter()<<endl;
    return 0;
}