#include <iostream>
using namespace std;
class rectangle {
private:
float Width;
float Length;
public:
//Contstructor
rectangle(float w=1, float l=1);
float GetWidth();
void SetWidth(float w);
float GetLength();
void SetLength(float l);
float Area();
float Perimeter();
float draw();
};
rectangle::rectangle(float w, float l):Width(w), Length (l) {}
//width
float rectangle::GetWidth()
{
return Width;
};
void rectangle::SetWidth(float w)
{
Width = w;
float userWidth;
cout << "Enter a width between 0 and 20.0: "; cin >> userWidth;
while (userWidth >= 20 || userWidth < 0)
{
cout << "Enter a width between 0 and 20.0: ";
cin >> userWidth;
}
};
//Length
float rectangle::GetLength()
{
return Length;
};
void rectangle::SetLength(float l)
{
Length = l;
float userLength;
cout << "Enter a width between 0 and 20.0: "; cin >> userLength;
while (userLength >= 20 || userLength < 0)
{
cout << "Enter a width between 0 and 20.0: ";
cin >> userLength;
}
};
//calculations
float rectangle::Area()
{
return Width*Length;
};
float rectangle::Perimeter()
{
return 2*(Width+Length);
};
int draw() {
float Length = (float) 3.11, Width = (float) 5.99;
int Length_int, Width_int;
Length_int = (int) Length;
Width_int = (int) Width;
for(int i = 0; i < Length_int; i++)
{
for (int i = 0; i < Width_int; i++)
cout << '+';
cout << endl;
}
return 0;
};
int main(){
rectangle r1(2,3);
cout << "Width: " << r1.GetWidth() << " \nHeight: " << r1.GetLength() << "\nArea: " << r1.Area() << "\nPerimeter: " << r1.Perimeter() << endl;
system("pause");
return 0;
};
ICAgICNpbmNsdWRlIDxpb3N0cmVhbT4KICAgIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAgICAgCiAgICBjbGFzcyByZWN0YW5nbGUgewogICAgcHJpdmF0ZToKICAgIGZsb2F0IFdpZHRoOwogICAgZmxvYXQgTGVuZ3RoOwogICAgIAogICAgcHVibGljOgogICAgLy9Db250c3RydWN0b3IKICAgIHJlY3RhbmdsZShmbG9hdCB3PTEsIGZsb2F0IGw9MSk7CiAgICAgCiAgICBmbG9hdCBHZXRXaWR0aCgpOwogICAgdm9pZCBTZXRXaWR0aChmbG9hdCB3KTsKICAgICAKICAgIGZsb2F0IEdldExlbmd0aCgpOwogICAgdm9pZCBTZXRMZW5ndGgoZmxvYXQgbCk7CiAgICAgCiAgICBmbG9hdCBBcmVhKCk7CiAgICBmbG9hdCBQZXJpbWV0ZXIoKTsKICAgIGZsb2F0IGRyYXcoKTsKICAgIH07CQogICAgIAogICAgIAogICAgcmVjdGFuZ2xlOjpyZWN0YW5nbGUoZmxvYXQgdywgZmxvYXQgbCk6V2lkdGgodyksIExlbmd0aCAobCkge30KICAgICAKICAgICAKICAgIC8vd2lkdGgKICAgIGZsb2F0IHJlY3RhbmdsZTo6R2V0V2lkdGgoKQogICAgewogICAgcmV0dXJuIFdpZHRoOwogICAgfTsKICAgICAKICAgIHZvaWQgcmVjdGFuZ2xlOjpTZXRXaWR0aChmbG9hdCB3KQogICAgewogICAgV2lkdGggPSB3OwogICAgZmxvYXQgdXNlcldpZHRoOwogICAgY291dCA8PCAiRW50ZXIgYSB3aWR0aCBiZXR3ZWVuIDAgYW5kIDIwLjA6ICI7IGNpbiA+PiB1c2VyV2lkdGg7CiAgICB3aGlsZSAodXNlcldpZHRoID49IDIwIHx8IHVzZXJXaWR0aCA8IDApCiAgICB7CiAgICBjb3V0IDw8ICJFbnRlciBhIHdpZHRoIGJldHdlZW4gMCBhbmQgMjAuMDogIjsKICAgIGNpbiA+PiB1c2VyV2lkdGg7CiAgICB9CiAgICB9OwogICAgIAogICAgIAogICAgLy9MZW5ndGgKICAgIGZsb2F0IHJlY3RhbmdsZTo6R2V0TGVuZ3RoKCkKICAgIHsKICAgIHJldHVybiBMZW5ndGg7CiAgICB9OwogICAgIAogICAgdm9pZCByZWN0YW5nbGU6OlNldExlbmd0aChmbG9hdCBsKQogICAgewogICAgTGVuZ3RoID0gbDsKICAgIGZsb2F0IHVzZXJMZW5ndGg7CiAgICBjb3V0IDw8ICJFbnRlciBhIHdpZHRoIGJldHdlZW4gMCBhbmQgMjAuMDogIjsgY2luID4+IHVzZXJMZW5ndGg7CiAgICB3aGlsZSAodXNlckxlbmd0aCA+PSAyMCB8fCB1c2VyTGVuZ3RoIDwgMCkKICAgIHsKICAgIGNvdXQgPDwgIkVudGVyIGEgd2lkdGggYmV0d2VlbiAwIGFuZCAyMC4wOiAiOwogICAgY2luID4+IHVzZXJMZW5ndGg7CiAgICB9CQogICAgfTsKICAgICAKICAgICAKICAgIC8vY2FsY3VsYXRpb25zCiAgICBmbG9hdCByZWN0YW5nbGU6OkFyZWEoKQogICAgewogICAgcmV0dXJuIFdpZHRoKkxlbmd0aDsKICAgIH07CiAgICBmbG9hdCByZWN0YW5nbGU6OlBlcmltZXRlcigpCiAgICB7CiAgICByZXR1cm4gMiooV2lkdGgrTGVuZ3RoKTsKICAgIH07CiAgICAgCiAgICAgCiAgICBpbnQgZHJhdygpIHsKICAgIGZsb2F0IExlbmd0aCA9IChmbG9hdCkgMy4xMSwgV2lkdGggPSAoZmxvYXQpIDUuOTk7CiAgICBpbnQgTGVuZ3RoX2ludCwgV2lkdGhfaW50OwogICAgTGVuZ3RoX2ludCA9IChpbnQpIExlbmd0aDsKICAgIFdpZHRoX2ludCA9IChpbnQpIFdpZHRoOwogICAgZm9yKGludCBpID0gMDsgaSA8IExlbmd0aF9pbnQ7IGkrKykKICAgIHsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgV2lkdGhfaW50OyBpKyspCiAgICBjb3V0IDw8ICcrJzsKICAgIGNvdXQgPDwgZW5kbDsKICAgIH0KICAgIHJldHVybiAwOwogICAgfTsKICAgICAKICAgICAKICAgIGludCBtYWluKCl7CiAgICAgCiAgICByZWN0YW5nbGUgcjEoMiwzKTsKICAgIGNvdXQgPDwgIldpZHRoOiAiIDw8IHIxLkdldFdpZHRoKCkgPDwgIiBcbkhlaWdodDogIiA8PCByMS5HZXRMZW5ndGgoKSA8PCAiXG5BcmVhOiAiIDw8IHIxLkFyZWEoKSA8PCAiXG5QZXJpbWV0ZXI6ICIgPDwgcjEuUGVyaW1ldGVyKCkgPDwgZW5kbDsKICAgICAKICAgIHN5c3RlbSgicGF1c2UiKTsKICAgIHJldHVybiAwOwogICAgfTsg