calc_super_ultra_rebuild_v2

This commit is contained in:
BuravovA 2025-11-27 09:48:56 +00:00
parent ecf0ebe34c
commit 10afa196c6

182
calc.py
View File

@ -1,133 +1,61 @@
def main(): def main(total=None):
print("Welcome to the Calculator") print("-=+=- / Welcome ту калькулейтор \ -=+=-\nВведите exit для выхода\n")
command = input("Select command: [ + ] [ - ] [ * ] [ / ] \nType exit if u want exit \n") if total == None:
match command: #выбор команд
case "+":
summ()
case "*":
multiplication()
case "-":
minus()
case "/":
division()
case "exit":
exit
case _:
print(KeyError("Incorrect"))
main()
def summ(total=None):
print("Enter number(s) to summ, enter spase to finish calculating")
if total is None:
try: try:
total = float(input("Enter First number \n")) total= float(input("Введите первое число\n"))
except ValueError: except ValueError:
print("Enter a valid number") print("Введите число")
return return
while True: while True:
num_input = input("Enter numbers to summ or change command [ + ] [ - ] [ * ] [ / ]\n") num_input = input("Введите операцию\n")
if num_input == " " or num_input == "": if num_input in ['' or ' ']:
print(total) print(f"Результат: {total}")
main() return total
if num_input in ["+", "-", "*", "/"]: match num_input:
if num_input == "+": case '+':
return summ(total) number = input("Введите число для суммы\n")
elif num_input == "-": try:
return minus(total) num = float(number)
elif num_input == "*": total+=num
return multiplication(total) print(f"Сумма = {total}")
elif num_input == "/": main(total)
return division(total) except ValueError:
try: print("Введите корректроное число")
number = float(num_input) main()
total += number case "*":
print(f"Total summ = {total}") number = input("Введите число для умножения\n")
except ValueError: try:
print("Error, enter correct number") num = float(number)
def minus(total=None): total*=num
print("Enter number(s) to summ, enter spase to finish calculating") print(f"Умножение = {total}")
if total is None: main(total)
try: except ValueError:
total = float(input("Enter First number \n")) print("Введите корректроное число")
except ValueError: main()
print("Enter a valid number") case "-":
return number = input("Введите число для разницы\n")
while True: try:
num_input = input("Enter numbers to minus or change command [ + ] [ - ] [ * ] [ / ]\n") num = float(number)
if num_input == " " or num_input == "": total-=num
print(total) print(f"Разница = {total}")
main() main(total)
if num_input in ["+", "-", "*", "/"]: except ValueError:
if num_input == "+": print("Введите корректроное число")
return summ(total) main()
elif num_input == "-": case "/":
return minus(total) number = input("Введите делитель\n")
elif num_input == "*": try:
return multiplication(total) num = float(number)
elif num_input == "/": total/=num
return division(total) print(f"Деление = {total}")
try: main(total)
number = float(num_input) except ValueError:
total -= number print("Введите корректроное число")
print(f"Total minus = {total}") main()
except ValueError: case "exit":
print("Error, enter correct number") exit()
def multiplication(total=None): case _:
print("Enter number(s) to multuplicate, enter spase to finish calculating") main()
print("Enter number(s) to summ, enter spase to finish calculating") print("Введите число или функцию")
if total is None:
try:
total = float(input("Enter First number \n"))
except ValueError:
print("Enter a valid number")
return
while True:
num_input = input("Enter numbers to multiplicate or change command [ + ] [ - ] [ * ] [ / ]\n")
if num_input == " " or num_input == "":
print(total)
main()
if num_input in ["+", "-", "*", "/"]:
if num_input == "+":
return summ(total)
elif num_input == "-":
return minus(total)
elif num_input == "*":
return multiplication(total)
elif num_input == "/":
return division(total)
try:
number = float(num_input)
total *= number
print(f"Total multiplication = {total}")
except ValueError:
print("Error, enter correct number")
def division(total=None):
print("Enter number(s) to summ, enter spase to finish calculating")
if total is None:
try:
total = float(input("Enter First number \n"))
except ValueError:
print("Enter a valid number")
return
while True:
num_input = input("Enter numbers to division or change command [ + ] [ - ] [ * ] [ / ]\n")
if num_input == " " or num_input == "":
print(total)
main()
if num_input in ["+", "-", "*", "/"]:
if num_input == "+":
return summ(total)
elif num_input == "-":
return minus(total)
elif num_input == "*":
return multiplication(total)
elif num_input == "/":
return division(total)
try:
number = float(num_input)
total /= number
print(f"Total division = {total}")
except ValueError:
print("Error, enter correct number")
if __name__ == "__main__": if __name__ == "__main__":
main() #запуск функции main, основа программы main() #запуск функции main, основа программы