solicitar el tamaño total del terreno disponible para plantar, por lo que se debe solicitar como entrada el ancho y largo del mismo, ambos números enteros. Luego este terreno se divide en n sembradíos, en donde n debe ser determinado por el programa. Para ello debe saber que los sembradíos son sub-terrenos cuadrados cuyo lado se ingresa como entrada. El lado de un sembradío es un número entero positivo y siempre debe ser menor o igual que el ancho y el largo del terreno. Si no es así, el programa debe detectarlo, indicar el error y terminar sin hacer más cálculos. La empresa encargada de la venta de sensores le ofrece distintos descuentos en el precio de los sensores de acuerdo al número de sembradíos. Se sabe que por cada metro cuadrado de sembradío se necesitan: 4 sensores de humedad, 1 de temperatura y 3 de pH.
**Calculadora de sensores para sembradíos** ===================================== ### Descripción Este programa calcula el tamaño total del terreno disponible para plantar y determina el número de sembradíos que se pueden crear con un lado determinado. Luego, calcula el número total de sensores necesarios para cada sembradío y aplica descuentos según el número de sembradíos. ### Código ```python def calcular_sensores(ancho, largo, lado_semillero): """ Calcula el número total de sensores necesarios para cada sembradío. Args: ancho (int): Ancho del terreno en metros. largo (int): Largo del terreno en metros. lado_semillero (int): Lado del sembradío en metros. Returns: int: Número total de sensores necesarios. """ if lado_semillero > ancho or lado_semillero > largo: raise ValueError("El lado del sembradío no puede ser mayor que el ancho o el largo del terreno.") area_semillero = lado_semillero ** 2 area_terreno = ancho * largo num_semilleros = area_terreno // area_semillero sensores_humedad = num_semilleros * area_semillero * 4 sensores_temperatura = num_semilleros * area_semillero sensores_pH = num_semilleros * area_semillero * 3 return sensores_humedad + sensores_temperatura + sensores_pH def calcular_descuento(num_semilleros): """ Calcula el descuento según el número de sembradíos. Args: num_semilleros (int): Número de sembradíos. Returns: float: Descuento en porcentaje. """ if num_semilleros <= 10: return 0.0 elif num_semilleros <= 50: return 0.05 elif num_semilleros <= 100: return 0.10 else: return 0.15 def main(): ancho = int(input("Ingrese el ancho del terreno en metros: ")) largo = int(input("Ingrese el largo del terreno en metros: ")) lado_semillero = int(input("Ingrese el lado del sembradío en metros: ")) try: num_sensores = calcular_sensores(ancho, largo, lado_semillero) num_semilleros = ancho * largo // (lado_semillero ** 2) descuento = calcular_descuento(num_semilleros) precio_total = num_sensores * (1 - descuento) print(f"El número total de sensores necesarios es: {num_sensores}") print(f"El descuento es: {descuento * 100}%") print(f"El precio total es: ${precio_total:.2f}") except ValueError as e: print(f"Error: {e}") if __name__ == "__main__": main() ``` ### Uso 1. Ejecuta el programa. 2. Ingresa el ancho y largo del terreno en metros. 3. Ingresa el lado del sembradío en metros. 4. El programa calculará el número total de sensores necesarios, el descuento y el precio total. Nota: El programa asume que el precio de cada sensor es de $1. Si el precio es diferente, debes ajustar el cálculo del precio total.