You are building a system for a Housing Society, such as Bahria Town. You are supposed to design a system that allows them to keep a record of how many blocks, sectors, streets, and houses the society has. Your system also generates unique names for blocks and sectors, and unique numbers of streets and houses. You must design the class structure yourself. 25 marks in this lab are for good class structure and good decisions regarding inheritance/composition. A society has many blocks, each block has many sectors, each sector has many streets, and each street has many houses. The society has a name, each block has a name (an alphabet), each sector has a name (an alphabet), each street has a number, and each house also has a unique house number. When your program starts: • It asks the user the name of the Society as well as the City in which it is located. Your program should be able to handle input that has more than one words. • Then, it asks the user how many blocks does this society has. Let’s say the user says 3. The 3 blocks are named Block A, Block B, and Block C automatically by your system. • While creating each Block, you ask the user how many sectors exist in each block. Let’s say that while creating Block A, the user says that this block has 2 sectors. Your system will automatically name these sectors Sector A and Sector B. • While creating each Sector, the system asks the user how many streets the sector has. Let’s say that while creating the Sector A, the user says that it has 3 streets. Your system will automatically name these streets Street 1, Street 2, and Street 3. • While creating a street, the system asks the user how many houses there are in the street. Let’s say the user says 10 houses for Street 1, your system will automatically name these houses House 1, House 2, …, House 10. If the user adds 5 houses to Street 2, these houses will be named House 11, House 12, …, House 15. No two houses in the society can have the same number. No two streets in the society can have the same number. No two sectors can have the same alphabet (you can assume that the user won’t ask for more than 26 sectors in total). No two blocks will have the same alphabet (assume total blocks < 26). PART TWO The society now wants to extend this system so that they can store information about the name of a house’s owner (string). Since you used Object Oriented Design, making this change should take no time. In the main function, after creating the Society object and before society.display(), set the owner names of a few houses, and make sure that society.display() displays this information. The main function will look like this: (Shown in figure) ...
You are building a system for a Housing Society, such as Bahria Town. You are supposed to design a system that allows them to keep a record of how many blocks, sectors, streets, and houses the society has. Your system also generates unique names for blocks and sectors, and unique numbers of streets and houses. You must design the class structure yourself. 25 marks in this lab are for good class structure and good decisions regarding inheritance/composition.
A society has many blocks, each block has many sectors, each sector has many streets, and each street has many houses. The society has a name, each block has a name (an alphabet), each sector has a name (an alphabet), each street has a number, and each house also has a unique house number.
When your program starts:
• It asks the user the name of the Society as well as the City in which it is located. Your program should be able to handle input that has more than one words.
• Then, it asks the user how many blocks does this society has. Let’s say the user says 3. The 3 blocks are named Block A, Block B, and Block C automatically by your system.
• While creating each Block, you ask the user how many sectors exist in each block. Let’s say that while creating Block A, the user says that this block has 2 sectors. Your system will automatically name these sectors Sector A and Sector B.
• While creating each Sector, the system asks the user how many streets the sector has. Let’s say that while creating the Sector A, the user says that it has 3 streets. Your system will automatically name these streets Street 1, Street 2, and Street 3.
• While creating a street, the system asks the user how many houses there are in the street. Let’s say the user says 10 houses for Street 1, your system will automatically name these houses House 1, House 2, …, House 10. If the user adds 5 houses to Street 2, these houses will be named House 11, House 12, …, House 15.
No two houses in the society can have the same number. No two streets in the society can have the same number. No two sectors can have the same alphabet (you can assume that the user won’t ask for more than 26 sectors in total). No two blocks will have the same alphabet (assume total blocks < 26).
PART TWO
The society now wants to extend this system so that they can store information about the name of a house’s owner (string). Since you used Object Oriented Design, making this change should take no time.
In the main function, after creating the Society object and before society.display(), set the owner names of a few houses, and make sure that society.display() displays this information. The main function will look like this:
(Shown in figure) ...
![int main()
{
Society society;
society.set(block,sector,street,house, owner_name);
society.display();
return 0;](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F4474a5a7-3ea1-441e-8022-251d14708d8f%2Fc54138b1-7e36-4944-954b-53ba645832d0%2Fps5fizd_processed.png&w=3840&q=75)
![Output screenshot:
Bahria Town
Block A
Lahore
Sector A
Street 1
House 1
House 2
House 3
House 4
House 5
Street 2
House 6
House 7
House 8
House 9 Ouпег: Janshed
House 10
House 11
House 12
House 13
House 14
House 15
Sector B
Street 3
House 16
House 17
Ouner: Afzal
House 18
Block B
Sector C
Street 4
House 19
Owner: Muntazir
Block C
Sector D
Street 5
House 20
Make user manual to set the ownership and display. Program will terminate on pressing a specific key.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F4474a5a7-3ea1-441e-8022-251d14708d8f%2Fc54138b1-7e36-4944-954b-53ba645832d0%2Flqd0iwv_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Step by step
Solved in 3 steps with 6 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)