dindizz's picture
Create app.py
6adef6a verified
import gradio as gr
def calculate_selling_price(daily_circulation, annual_expenses, days_sold):
try:
# Calculate the selling price per copy
selling_price = annual_expenses / (daily_circulation * days_sold)
return f"₹{selling_price:.2f} per copy"
except ZeroDivisionError:
return "Invalid input: Daily circulation and days sold must be greater than zero."
def example_explanation():
explanation = (
"For example, if a newspaper prints 10 lakh copies daily, sells them for 360 days a year, "
"and has annual expenses of ₹900 crores, the selling price per copy can be calculated as:\n\n"
"Selling Price = Annual Expenses / (Daily Circulation × Days Sold)\n"
"= ₹900,00,00,000 / (10,00,000 × 360)\n"
"= ₹25 per copy"
)
return explanation
# Gradio interface
interface = gr.Interface(
fn=calculate_selling_price,
inputs=[
gr.Number(label="Daily Circulation (e.g., 1000000 for 10 lakh copies)"),
gr.Number(label="Annual Expenses (in ₹, e.g., 900000000 for ₹900 crores)"),
gr.Number(label="Days Sold (e.g., 360)")
],
outputs=gr.Textbox(label="Selling Price per Copy"),
examples=[[1000000, 900000000, 360]],
title="Newspaper Selling Price Calculator",
description=(
"This calculator helps determine the selling price per copy of a newspaper based on its "
"daily circulation, annual expenses, and the number of days it is sold in a year.\n\n"
+ example_explanation()
)
)
# Launch the Gradio interface
interface.launch()