Answer: Here is a guide
Step-by-step explanation:
Task 1: Setting up the system
# Initialize the stock for each shirt design and size
designs = ['A', 'B', 'C', 'D', 'E']
sizes = ['S', 'M', 'L']
stock = {design+size: 50 for design in designs for size in sizes}
# Input the design and size of a shirt
design = input("Enter the design code (A, B, C, D, E): ")
size = input("Enter the size code (S, M, L): ")
# Input the number of that type of shirt sold
sold = int(input("Enter the number of shirts sold: "))
# Calculate and store the number of that type of shirt remaining
stock[design+size] -= sold
print("Stock remaining for", design+size, ":", stock[design+size])
Task 2: Calculating the money raised
# Initialize the number of shirts sold for each design and size
designs = ['A', 'B', 'C', 'D', 'E']
sizes = ['S', 'M', 'L']
sales = {design+size: 0
for design in designs for size in sizes}
Input the design and size of a shirt
design = input("Enter the design code (A, B, C, D, E): ")
size = input("Enter the size code (S, M, L): ")
Input the number of that type of shirt sold
sold = int(input("Enter the number of shirts sold: "))
Calculate and store the number of that type of shirt remaining
stock[design+size] -= sold
sales[design+size] += sold
Output the statistics for each shirt as individual figures
for design in designs:
for size in sizes:
print("Design", design, "Size", size, ":", sales[design+size])
Output the total statistics
total_sales = sum(sales.values())
print("Total shirts sold: ", total_sales)
Output the shirt that has sold the most and the least
most_sold = max(sales, key=sales.get)
least_sold = min(sales, key=sales.get)
print("Most sold shirt: ", most_sold)
print("Least sold shirt: ", least_sold)
Task 3: Modifying the costs
```python
# Initialize the costs for each design
designs = ['A', 'B', 'C', 'D', 'E']
costs = {'A': 4, 'B': 4, 'C': 4, 'D': 6, 'E': 7.5}
# Input the design and size of a shirt
design = input("Enter the design code (A, B, C, D, E): ")
size = input("Enter the size code (S, M, L): ")
# Input the number of that type of shirt sold
sold = int(input("Enter the number of shirts
Task 1, the program initializes the stock for each shirt design and size, and then it allows the user to input the design and size of a shirt, the number of that type of shirt sold, and then it calculates and stores the number of that type of shirt remaining.
Task 2, the program calculates how many of each design and size of shirt has been sold, and outputs the statistics for each shirt as individual figures and as a total, it also prints which shirt has sold the most and which has sold the least.
Task 3, the program modifies the costs of the shirts, the effect is that the amount of charity money available for each design will now vary with designs A, B and C raising $4 each, design D will raise $6 and design E will raise $7.50. It allows the user to select and print statistics for a shirt design, to allow the money raised to be output for each size and as a total, with suitable annotation.
In order to complete these tasks, you will have to write more code, to add more functionality, error handling, and validation. You will also have to test your code to make sure it works correctly.