#include #include #include #include #define MAXBUILDINGS 2 #define MAXROOMS 3 class CRoom { char RoomNumber[10]; int RoomSqFeet; public: void info_in(void); void info_out(void); void setsqfeet(int); int getsqfeet(void); void setnumber(char*); char* getnumber(void); }; void CRoom::info_in(){ char nl; cout << "Enter Room #: "; cin.get(RoomNumber,10,'\n'); cin.get(nl); cout << "Enter Room Size (rounded): "; cin >> RoomSqFeet; cin.get(nl); } void CRoom::info_out(){ cout << "Room Number: " << RoomNumber << endl; cout << "Room Size: " << RoomSqFeet << endl; cout << endl; } void CRoom::setnumber(char* tnumber){ strcpy(RoomNumber,tnumber); } char* CRoom::getnumber(){ return(RoomNumber); } void CRoom::setsqfeet(int tsq){ RoomSqFeet=tsq; } int CRoom::getsqfeet(){ return(RoomSqFeet); } class CBuilding { char BuildingName[151]; int SquareFeet; CRoom rooms[MAXROOMS]; public: void info_in(void); void info_out(void); void line_out(void); char* getroomnumber(int); int getroomsqfeet(int); char* getname(void); int getsquarefeet(void); void setname(char*); void setsquarefeet(int); CBuilding(void); }; char* CBuilding::getroomnumber(int rmnum){ return(rooms[rmnum].getnumber()); } int CBuilding::getroomsqfeet(int rmnum){ return(rooms[rmnum].getsqfeet()); } CBuilding::CBuilding(){ strcpy(BuildingName,"< empty >"); SquareFeet=0; } void CBuilding::setname(char* tmpname){ strcpy(BuildingName,tmpname); } void CBuilding::setsquarefeet(int tmpsqfeet){ SquareFeet=tmpsqfeet; } char* CBuilding::getname(){ return(BuildingName); } int CBuilding::getsquarefeet(){ return(SquareFeet); } void CBuilding::line_out(){ cout << setiosflags(ios::left) << setw(30) << BuildingName << " "; cout << setiosflags(ios::right) << setw(10) << SquareFeet << endl; } void CBuilding::info_out(){ cout << "Building name: " << BuildingName << endl; cout << "Square Feet: " << SquareFeet << endl; int r; for(r=0;r> SquareFeet; cin.get(nl); int r; for(r=0;r> choice; cin.get(nl); cout << endl << endl; switch(choice) { case 1: for(b=0;b> tempsquarefeet; buildingfile.get(nl); buildings[b].setsquarefeet(tempsquarefeet); } buildingfile.close(); break; case 5: for(b=0;b> bldgnum; cin.get(nl); buildings[bldgnum-1].info_in(); break; } } return(0); }