Quick question and help for python, how do I display the room area calculated BEFORE subtracting doors/windows in code?
Quick question and help for python, how do I display the room area calculated BEFORE subtracting doors/windows in code?
My code:
import math
def calculate_paint_needed(length, width, height, doors, windows):
total_wall_area = 2 * (length + width) * height
total_door_area = sum(door["length"] * door["width"] for door in doors)
print("Area of door: ",total_door_area)
total_window_area = sum(window["length"] * window["width"] for window in windows)
print("Area of Window: ",total_window_area)
total_wall_area -= total_door_area + total_window_area
gallons_needed = total_wall_area / 100.0
return gallons_needed
def get_valid_input(prompt):
while True:
try:
value = float(input(prompt))
return value
except ValueError:
print("Invalid input. Please enter a valid number.")
def main():
length = get_valid_input("Enter the length of the room in feet: ")
width = get_valid_input("Enter the width of the room in feet: ")
height = get_valid_input("Enter the height of the room in feet: ")
print("Excellent, lets get your windows and doors in now.")
while True:
try:
num_doors = int(input("Enter the number of doors (must be greater than 0): "))
if num_doors > 0:
break
else:
print("Number of doors must be greater than 0.")
except ValueError:
print("Invalid input. Please enter a valid integer.")
doors = [{"length": get_valid_input(f"Enter the length of door {i+1} in feet: "),
"width": get_valid_input(f"Enter the width of door {i+1} in feet: ")}
for i in range(num_doors)]
num_windows = int(input("Enter the number of windows: "))
windows = [{"length": get_valid_input(f"Enter the length of window {i+1} in feet: "),
"width": get_valid_input(f"Enter the width of window {i+1} in feet: ")}
for i in range(num_windows)]
gallons_needed = calculate_paint_needed(length, width, height, doors, windows)
print(f"You will need to buy {math.ceil(gallons_needed)} gallons of paint.")
print("You will need exactly", gallons_needed, "gallons of paint for the walls after subtracting the doors and windows.")
if __name__ == "__main__":
main()
Step by step
Solved in 5 steps with 5 images