Hi Guys,
i am new in Python or any programming so if someoone could be so kind and help me. I am trying to find mistake in week already and I gave up. It is printing me only first numbers but the rest from output it is not showing. Can someoone help me with that, I would be really happy.
def arithmetic_arranger(problems):
# 1 len
if len(problems) > 5:
return "Error: Too many problems."
for e, number in enumerate(problems, start=0):
num1, operator, num2 = number.split(" ")
num1_len = len(num1)
num2_len = len(num2)
operators = ["+", "-"]
# 2 operator
if operator not in operators:
return "Error: Operator must be '+' or '-'."
# 3 digits
if num1.isdigit() == False:
return "Error: Numbers must only contain digits."
if num2.isdigit() == False:
return "Error: Numbers must only contain digits."
# 4 width
if num1_len > 4:
return "Error: Numbers cannot be more than four digits."
if num2_len > 4:
return "Error: Numbers cannot be more than four digits."
row_1 = ''
row_2 = ''
row_3 = ''
row_4 = ''
if operator == "+":
total = int(num1) + int(num2)
else:
total = int(num1) - int(num2)
#space
space = max(num1_len, num2_len) + 2
extra_space = ' '
row_1 += num1.rjust(space)
row_2 += operator + num2.rjust(space-1)
row_3 += '-' * space
row_4 += str(total).rjust(space)
row_1 += extra_space
row_2 += extra_space
row_3 += extra_space
row_4 += extra_space
if problems:
solution = row_1 + '\n' + row_2 + '\n' + row_3 + '\n' + row_4
else:
solution = row_1 + '\n' + row_2 + '\n' + row_3
return solution
return problems
print(arithmetic_arranger([“32 + 698”, “3801 - 2”, “45 + 43”, “123 + 49”]))