Skip to content

Commit feb64b1

Browse files
authored
Update main.py
1 parent 7dc48cd commit feb64b1

File tree

1 file changed

+48
-21
lines changed

1 file changed

+48
-21
lines changed

main.py

Lines changed: 48 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ def charToBin(char):
5656
return None
5757

5858
def binsToFormula(bin):
59+
if not isinstance(bin, list):
60+
return binsToFormula(formula)
5961
results=[]
6062
for bi in bin:
6163
# print(bi, binToFormula(bi))
@@ -78,37 +80,59 @@ def binToFormula(bin):
7880
return None
7981

8082
def formulasToBin(formulas):
83+
if not isinstance(formulas, list):
84+
return formulaToBin(formulas)
8185
results=[]
8286
for formula in formulas:
8387
results.append(formulaToBin(formula))
8488
return results
8589

8690
def formulaToBin(formula):
91+
# print("------------->", formula)
8792
if formula != None and len(formula) > 0:
93+
# print(formula)
8894
results=[]
89-
i=0
90-
print(";;;",formula)
91-
for f in formula:
92-
if i == 0 and f.startswith("y"):
93-
print("1/insert y")
94-
results.append(0) # x
95-
elif i == 0 and f.startswith("z"):
96-
results.append(0) # x
97-
results.append(0) # y
98-
print("2/insert x")
99-
print("2/insert y")
100-
elif i == 1 and f.startswith("z"):
101-
results.append(0) # y
102-
print("3/insert y")
103-
print("f", f)
104-
if f.endswith("'"):
105-
results.append(0)
106-
else:
107-
results.append(1)
108-
i=i+1
95+
muls=formula.split("*")
96+
for mul in muls:
97+
result=[]
98+
adds=mul.split("+")
99+
i=0
100+
j=0
101+
for add in adds:
102+
if i == 0 and add == "z":
103+
result.append(0) # x
104+
result.append(0) # y
105+
j=j+1
106+
j=j+1
107+
elif i == 0 and add == "y":
108+
result.append(0) # x
109+
j=j+1
110+
# elif i == 1 and add == "z":
111+
# result.append(0) # y
112+
elif i == 2 and add == "z":
113+
result.append(0) # y
114+
j=j+1
115+
if add.endswith("'"):
116+
result.append(0)
117+
else:
118+
result.append(1)
119+
# print(add)
120+
i=i+1
121+
# print("last", i,j,i+j)
122+
for k in range(i+j, 3):
123+
# print(k)
124+
result.append(0)
125+
results.append(result)
109126
return results
110127
return None
111128

129+
# print("===>", formulaToBin("x"))
130+
# print("===>", formulaToBin("x+y"))
131+
# print("===>", formulaToBin("x*y+z"))
132+
# print("===>", formulaToBin("y"))
133+
# print("===>", formulaToBin("z"))
134+
# print("===>", formulaToBin("z'"))
135+
112136
def binToFormulaOld(bin):
113137
if bin == [0,0,0]:
114138
return ["x'","y'","z'"]
@@ -445,7 +469,10 @@ def filterGArray(g):
445469

446470
if gValuesCount == binariesLength:
447471
print("\tThey are equal!")
448-
g=formulasToBin(newG)
472+
# print("-->", newG)
473+
# print("-->", formulasToBin(newG))
474+
# g=formulasToBin(newG)
475+
g=(newG)
449476
elif gValuesCount < binariesLength:
450477
print("\tbinariesLength is bigger then gValuesCount.")
451478
g=newG

0 commit comments

Comments
 (0)