Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| def calculate_price(weeks): | |
| # Definir los valores por defecto | |
| min_weeks = 4 | |
| max_weeks = 12 | |
| min_price = 1700 # USD por 4 semanas | |
| max_price = 900 # USD por 12 semanas | |
| # Algoritmo de interpolaci贸n lineal | |
| if weeks <= min_weeks: | |
| return f"${min_price:,.0f} USD" | |
| elif weeks >= max_weeks: | |
| return f"${max_price:,.0f} USD" | |
| else: | |
| # Formula de interpolaci贸n lineal | |
| price = min_price + (max_price - min_price) * ((weeks - min_weeks) / (max_weeks - min_weeks)) | |
| return f"${round(price):,.0f} USD" | |
| # Interfaz de Gradio | |
| with gr.Blocks() as demo: | |
| gr.Markdown("Ajusta el slider con el n煤mero de semanas en las que desees que se entregue el proyecto.") | |
| weeks_slider = gr.Slider( | |
| minimum=4, | |
| maximum=12, | |
| step=1, | |
| value=8, | |
| label="Tiempo de desarrollo (semanas)", | |
| info="Escoge entre 4 y 12 semanas" | |
| ) | |
| price_output = gr.Textbox( | |
| label="Precio del Proyecto", | |
| value=calculate_price(8) # Default para 8 semanas | |
| ) | |
| weeks_slider.change( | |
| fn=calculate_price, | |
| inputs=weeks_slider, | |
| outputs=price_output | |
| ) | |
| demo.launch() |