Помогите, пожалуйста!
Ищу ошибку целый день!
Не могу найти! Я начинающий в Python!
def calculator():
num = int(input('Скольчи чисел нужно? 3 max.'))
if num == 2:
do = input('Что делаем? (+, -, /, *)')
if do == '+':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
numex = firstnum + secondnum
print('Получится ' + str(numex))
elif do == '-':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
numex = firstnum - secondnum
print('Получится ' + str(numex))
elif do == '/':
def cull1():
do1 = input('Остовляем только целую часть? Да/Нет ')
if do1 == 'Да' or do1 == 'да':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
numex = firstnum // secondnum
print('Получится ' + str(numex))
elif do1 == 'Нет' or do1 == 'нет':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
numex = firstnum / secondnum
print('Получится ' + str(numex))
else:
print('Выбрано неверное действие!')
cull1()
cull1()
elif do == '*':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
numex = firstnum * secondnum
print('Получится ' + str(numex))
elif num == 3:
do = input('Что делаем? (+, -, /, *)')
if do == '+':
do1 = input('Что делаем? + +; + -; + /; + *: ')
def cullPl():
if do1 == '+ +' or do1 == '++':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
thirdnum = float(input('Третье число: '))
numex = firstnum + secondnum + thirdnum
print('Получится ' + str(numex))
elif do1 == '+ -' or do1 == '+-':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
thirdnum = float(input('Третье число, которое будем вычитать: '))
numex = firstnum + secondnum - thirdnum
print('Получится ' + str(numex))
elif do1 == '+ /' or do1 == '+/':
def cullPlDi():
do2 = input('Оставить только целую часть? Да/Нет ')
if do2 == 'Да' or do2 == 'да':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
thirdnum = float(input('Третье число, на которое будем делить сумму 1 и 2 числа: '))
numex1 = firstnum + secondnum
numex = numex1 // thirdnum
print('Получится ' + str(numex))
elif do2 == 'Нет' or do2 == 'нет':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
thirdnum = float(input('Третье число, на которое будем делить сумму 1 и 2 числа: '))
numex1 = firstnum + secondnum
numex = numex1 / thirdnum
print('Получится ' + str(numex))
else:
print('Не правильные данные!')
cullPlDi()
def cullPlDi2():
cullPlDi()
cullPlDi()
elif do1 == '+ *' or do1 == '+*':
firstnum = float(input('Первое число [ Можно не целое! Пример: 5.2]: '))
secondnum = float(input('Второе число: '))
thirdnum = float(input('Третье число, на которое нужно умножить сумму 1 и 2 числа: '))
numex1 = firstnum + secondnum
numex = numex1 * thirdnum
print('Получится ' + str(numex))
cullPl()
calculator()
Выдаёт ошибку:
Traceback (most recent call last):
File "G:\Py\cull.py", line 83, in <module>
calculator()
File "G:\Py\cull.py", line 78, in calculator
cullPl()
File "G:\Py\cull.py", line 77, in cullPl
cullPlDi()
UnboundLocalError: local variable 'cullPlDi' referenced before assignment