// Gage Alvarez CS1A Chapter 6 P. 369, 2
/**************************************************************
*
* Calculate rectangle area
* ____________________________________________________________
* Description
* program calculates the area of an inputted rectangle
* ____________________________________________________________
* INPUT
* length: the length of the rectangle
* width: the width of the rectangle
*
* OUTPUT
* area: the area of the rectangle
*
**************************************************************/
#include <iostream>
using namespace std;
int getLength();
int getWidth();
int getArea(int length, int width);
void displayData(int length, int width, int area);
int main() {
//Data Dictionary
int length;
int width;
int area;
//Input
length = getLength();
width = getWidth();
//Processing
area = getArea(length, width);
//Output
displayData(length, width, area);
return 0;
}
int getLength() {
int length;
cout<< "Enter rectangle length: \n";
cin>> length;
return length;
}
int getWidth() {
int width;
cout<<"Enter rectangle width: \n";
cin>>width;
return width;
}
int getArea(int length, int width) {
int area;
area = length * width;
return area;
}
void displayData(int length, int width, int area) {
cout<< "length\t width\t area\n";
cout<< length <<"\t\t"<< width<<"\t\t" << area;
}
Ly8gR2FnZSBBbHZhcmV6ICAgICAgICAgICAgICAgICAgICAgICBDUzFBICAgICAgICAgICAgICAgICAgIENoYXB0ZXIgNiBQLiAzNjksIDIKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogKgogKiBDYWxjdWxhdGUgcmVjdGFuZ2xlIGFyZWEKICogX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiAqIERlc2NyaXB0aW9uCiAqCQlwcm9ncmFtIGNhbGN1bGF0ZXMgdGhlIGFyZWEgb2YgYW4gaW5wdXR0ZWQgcmVjdGFuZ2xlCiAqIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogKiBJTlBVVAogKgkJbGVuZ3RoOiB0aGUgbGVuZ3RoIG9mIHRoZSByZWN0YW5nbGUKICoJCXdpZHRoOiB0aGUgd2lkdGggb2YgdGhlIHJlY3RhbmdsZQogKgogKiBPVVRQVVQKICoJCWFyZWE6IHRoZSBhcmVhIG9mIHRoZSByZWN0YW5nbGUKICoKICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZ2V0TGVuZ3RoKCk7CmludCBnZXRXaWR0aCgpOwppbnQgZ2V0QXJlYShpbnQgbGVuZ3RoLCBpbnQgd2lkdGgpOwp2b2lkIGRpc3BsYXlEYXRhKGludCBsZW5ndGgsIGludCB3aWR0aCwgaW50IGFyZWEpOwoKCmludCBtYWluKCkgewoJLy9EYXRhIERpY3Rpb25hcnkKCWludCBsZW5ndGg7CglpbnQgd2lkdGg7CglpbnQgYXJlYTsKCS8vSW5wdXQKCWxlbmd0aCA9IGdldExlbmd0aCgpOwoJd2lkdGggPSBnZXRXaWR0aCgpOwoJLy9Qcm9jZXNzaW5nCglhcmVhID0gZ2V0QXJlYShsZW5ndGgsIHdpZHRoKTsKCS8vT3V0cHV0CglkaXNwbGF5RGF0YShsZW5ndGgsIHdpZHRoLCBhcmVhKTsKCXJldHVybiAwOwp9CgppbnQgZ2V0TGVuZ3RoKCkgewoJCWludCBsZW5ndGg7CgkJY291dDw8ICJFbnRlciByZWN0YW5nbGUgbGVuZ3RoOiBcbiI7CgkJY2luPj4gbGVuZ3RoOwoJCXJldHVybiBsZW5ndGg7Cgl9CgkKaW50IGdldFdpZHRoKCkgewoJaW50IHdpZHRoOwoJY291dDw8IkVudGVyIHJlY3RhbmdsZSB3aWR0aDogXG4iOwoJY2luPj53aWR0aDsKCXJldHVybiB3aWR0aDsKfQoKaW50IGdldEFyZWEoaW50IGxlbmd0aCwgaW50IHdpZHRoKSB7CglpbnQgYXJlYTsKCWFyZWEgPSBsZW5ndGggKiB3aWR0aDsKCXJldHVybiBhcmVhOwp9Cgp2b2lkIGRpc3BsYXlEYXRhKGludCBsZW5ndGgsIGludCB3aWR0aCwgaW50IGFyZWEpIHsKCWNvdXQ8PCAibGVuZ3RoXHQgd2lkdGhcdCBhcmVhXG4iOwoJY291dDw8IGxlbmd0aCA8PCJcdFx0Ijw8IHdpZHRoPDwiXHRcdCIgPDwgYXJlYTsKfQo=