Spaces:
Sleeping
Sleeping
| 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() | |