|
|
@ -7,12 +7,14 @@ def create_number(i):
|
|
|
|
# print(get_number)
|
|
|
|
# print(get_number)
|
|
|
|
return get_number
|
|
|
|
return get_number
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def create_sign():
|
|
|
|
def create_sign():
|
|
|
|
sign = ['+', '-', '*', '÷']
|
|
|
|
sign = ['+', '-', '*', '÷']
|
|
|
|
get_sign = random.choice(sign)
|
|
|
|
get_sign = random.choice(sign)
|
|
|
|
# print(get_sign)
|
|
|
|
# print(get_sign)
|
|
|
|
return get_sign
|
|
|
|
return get_sign
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def create_formula(flag_num):
|
|
|
|
def create_formula(flag_num):
|
|
|
|
total = [3, 5, 7]
|
|
|
|
total = [3, 5, 7]
|
|
|
|
flag = random.choice(total)
|
|
|
|
flag = random.choice(total)
|
|
|
@ -42,7 +44,8 @@ def create_formula(flag_num):
|
|
|
|
break
|
|
|
|
break
|
|
|
|
|
|
|
|
|
|
|
|
# print(result)
|
|
|
|
# print(result)
|
|
|
|
formula = str(str(result).replace("'","").replace(',','')).replace('[','').replace(']','')
|
|
|
|
formula = str(str(result).replace("'", "").replace(
|
|
|
|
|
|
|
|
',', '')).replace('[', '').replace(']', '')
|
|
|
|
# 计算
|
|
|
|
# 计算
|
|
|
|
while len(result) != 1:
|
|
|
|
while len(result) != 1:
|
|
|
|
if '(' in result:
|
|
|
|
if '(' in result:
|
|
|
@ -67,7 +70,8 @@ def create_formula(flag_num):
|
|
|
|
if '*' in result:
|
|
|
|
if '*' in result:
|
|
|
|
number_sign = result.index('*')
|
|
|
|
number_sign = result.index('*')
|
|
|
|
# print(result)
|
|
|
|
# print(result)
|
|
|
|
number_num = int(float(result[number_sign - 1]) * float(result[number_sign + 1]))
|
|
|
|
number_num = int(
|
|
|
|
|
|
|
|
float(result[number_sign - 1]) * float(result[number_sign + 1]))
|
|
|
|
result[number_sign] = number_num
|
|
|
|
result[number_sign] = number_num
|
|
|
|
result.remove(result[number_sign - 1])
|
|
|
|
result.remove(result[number_sign - 1])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
@ -78,7 +82,8 @@ def create_formula(flag_num):
|
|
|
|
create_formula(flag_num)
|
|
|
|
create_formula(flag_num)
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
# print(result[number_sign - 1],result[number_sign + 1])
|
|
|
|
# print(result[number_sign - 1],result[number_sign + 1])
|
|
|
|
number_num = Fraction(int(result[number_sign - 1]) , int(result[number_sign + 1]))
|
|
|
|
number_num = Fraction(
|
|
|
|
|
|
|
|
int(result[number_sign - 1]), int(result[number_sign + 1]))
|
|
|
|
# print(number_num)
|
|
|
|
# print(number_num)
|
|
|
|
result[number_sign] = number_num
|
|
|
|
result[number_sign] = number_num
|
|
|
|
result.remove(result[number_sign - 1])
|
|
|
|
result.remove(result[number_sign - 1])
|
|
|
@ -86,14 +91,16 @@ def create_formula(flag_num):
|
|
|
|
# print('÷'+str(result))
|
|
|
|
# print('÷'+str(result))
|
|
|
|
elif '+' in result:
|
|
|
|
elif '+' in result:
|
|
|
|
number_sign = result.index('+')
|
|
|
|
number_sign = result.index('+')
|
|
|
|
number_num = int(float(result[number_sign - 1]) + float(result[number_sign + 1]))
|
|
|
|
number_num = int(
|
|
|
|
|
|
|
|
float(result[number_sign - 1]) + float(result[number_sign + 1]))
|
|
|
|
result[number_sign - 1] = number_num
|
|
|
|
result[number_sign - 1] = number_num
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
# print('+'+str(result))
|
|
|
|
# print('+'+str(result))
|
|
|
|
elif '-' in result:
|
|
|
|
elif '-' in result:
|
|
|
|
number_sign = result.index('-')
|
|
|
|
number_sign = result.index('-')
|
|
|
|
number_num = int(float(result[number_sign - 1]) - float(result[number_sign + 1]))
|
|
|
|
number_num = int(
|
|
|
|
|
|
|
|
float(result[number_sign - 1]) - float(result[number_sign + 1]))
|
|
|
|
result[number_sign - 1] = number_num
|
|
|
|
result[number_sign - 1] = number_num
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
|
result.remove(result[number_sign])
|
|
|
@ -110,7 +117,8 @@ def create_formula(flag_num):
|
|
|
|
if result[start + 1] == 0 or result[start + 1] == '0':
|
|
|
|
if result[start + 1] == 0 or result[start + 1] == '0':
|
|
|
|
result = 0
|
|
|
|
result = 0
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
result = str(result)[start+1:center] + '/' + str(result)[center+1:end]
|
|
|
|
result = str(result)[start+1:center] + \
|
|
|
|
|
|
|
|
'/' + str(result)[center+1:end]
|
|
|
|
# print(result)
|
|
|
|
# print(result)
|
|
|
|
# print(start,center,end)
|
|
|
|
# print(start,center,end)
|
|
|
|
# print(formula)
|
|
|
|
# print(formula)
|
|
|
|