import streamlit as st def main(): st.title("Advanced Calculator") # User inputs num1 = st.number_input("Enter first number", value=0.0, format="%.2f") num2 = st.number_input("Enter second number", value=0.0, format="%.2f") num3 = st.number_input("Enter third number", value=0.0, format="%.2f") operation = st.selectbox("Select operation", [ "Addition", "Subtraction", "Multiplication", "Division", "Average", "Maximum", "Minimum", "Exponentiation" ]) result = None if operation == "Exponentiation": base = st.number_input("Enter base number", value=0.0, format="%.2f") exponent = st.number_input("Enter exponent", value=1.0, format="%.2f") if st.button("Calculate"): if operation == "Addition": result = num1 + num2 + num3 elif operation == "Subtraction": result = num1 - num2 - num3 elif operation == "Multiplication": result = num1 * num2 * num3 elif operation == "Division": if num2 != 0 and num3 != 0: result = num1 / num2 / num3 else: st.error("Cannot divide by zero") elif operation == "Average": result = (num1 + num2 + num3) / 3 elif operation == "Maximum": result = max(num1, num2, num3) elif operation == "Minimum": result = min(num1, num2, num3) elif operation == "Exponentiation": result = base ** exponent # Fixed exponentiation logic if result is not None: st.success(f"The result is: {result}") if __name__ == "__main__": main()