Untitled
unknown
plain_text
a year ago
1.4 kB
9
Indexable
import math def calculate_area(sides, angles, distances): # Check if the number of sides matches the number of angles and distances if len(angles) != sides or len(distances) != sides: print("Invalid input: Number of angles/distances doesn't match the number of sides.") return None # Convert angles to radians angles_rad = [math.radians(angle) for angle in angles] # Initialize area area = 0 # Calculate area using coordinates method for i in range(sides): j = (i + 1) % sides area += distances[i] * distances[j] * math.sin(angles_rad[i] + angles_rad[j]) area /= 2 return abs(area) def main(): # Input number of sides sides = int(input("Enter the number of sides of the polygon (3 to 7): ")) if sides < 3 or sides > 7: print("Invalid number of sides. Exiting...") return # Input angles angles = [] for i in range(sides): angle = float(input(f"Enter the angle {i+1} in degrees: ")) angles.append(angle) # Input distances distances = [] for i in range(sides): distance = float(input(f"Enter the distance {i+1}: ")) distances.append(distance) # Calculate area area = calculate_area(sides, angles, distances) if area is not None: print(f"The area of the traverse is: {area} square units.") if __name__ == "__main__": main()
Editor is loading...
Leave a Comment