Practice

House Room Area Report

2024/Oct/Nov·Variant 2·Q11·[15 marks]
HARD2D Arrays

A house has between 3 and 6 rooms. Read the number of rooms (re-read until it is in range). For each room, read its name, length in metres, and width in metres. Store the area in a second index of a 2D array as length × width.

Then output every room's name, length, width, and area, followed by:

  • the name of the largest room
  • the name of the smallest room
  • the total area
  • the average area, rounded to 2 decimal places

If two rooms share the same extreme area, keep the first one found.

Input: Room count (validated 3–6), then name, length, width for each room. Output: One block per room, then the four summary lines.

Example:

Input:  3
        Kitchen
        4
        5
        Store
        3
        3
        Lounge
        6
        4
Output: Room: Kitchen
        Length: 4 metres
        Width: 5 metres
        Area: 20 square metres
        Room: Store
        Length: 3 metres
        Width: 3 metres
        Area: 9 square metres
        Room: Lounge
        Length: 6 metres
        Width: 4 metres
        Area: 24 square metres
        Largest: Lounge
        Smallest: Store
        Total area: 53
        Average area: 17.67

Sample Test Cases

Test 1: Three rooms, lounge largest
Inputs: 3, Kitchen, 4, 5, Store, 3, 3, Lounge, 6, 4
Expected: Room: Kitchen Length: 4 metres Width: 5 metres Area: 20 square metres Room: Store Length: 3 metres Width: 3 metres Area: 9 square metres Room: Lounge Length: 6 metres Width: 4 metres Area: 24 square metres Largest: Lounge Smallest: Store Total area: 53 Average area: 17.67
Test 2: Invalid count 2 rejected, then four rooms
Inputs: 2, 4, A, 2, 2, B, 2, 2, C, 3, 3, D, 1, 1
Expected: Room: A Length: 2 metres Width: 2 metres Area: 4 square metres Room: B Length: 2 metres Width: 2 metres Area: 4 square metres Room: C Length: 3 metres Width: 3 metres Area: 9 square metres Room: D Length: 1 metres Width: 1 metres Area: 1 square metres Largest: C Smallest: D Total area: 18 Average area: 4.5