From a60d644db0987343d2038b70101f896154f2a66d Mon Sep 17 00:00:00 2001 From: Vipul Cariappa Date: Thu, 15 Dec 2022 20:41:19 +0530 Subject: [PATCH] better display function --- logic.py | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/logic.py b/logic.py index 769f480..9adfd90 100644 --- a/logic.py +++ b/logic.py @@ -1,3 +1,6 @@ +import math + + class _ADD: def __str__(self): return "+" @@ -251,14 +254,23 @@ def display_table(self): self.generate_truth_table() table_length = len(self.table[str(self)]) + header_string_length = [len(i) for i in self.table.keys()] + print("|", end="") for i in self.table.keys(): - print(i, end="\t") + print(f" {i} |", end="") print("\n") for i in range(table_length): - for j in self.table.keys(): - print(self.table[j][i], end="\t") + print("|", end="") + for index, j in enumerate(self.table.keys()): + print( + " " * math.floor((header_string_length[index] - 1) / 2) + + f" {self.table[j][i]}" + + " " * math.ceil((header_string_length[index] - 1) / 2) + + " |", + end="", + ) print("\n") print("\n") @@ -295,6 +307,8 @@ def __add__(self, other): # adding sub equations eq.sub_eqs.append(self) eq.sub_eqs.extend(self.sub_eqs) + eq.sub_eqs.append(other) + eq.sub_eqs.extend(other.sub_eqs) return eq @@ -333,6 +347,8 @@ def __radd__(self, other): # adding sub equations eq.sub_eqs.append(self) eq.sub_eqs.extend(self.sub_eqs) + eq.sub_eqs.append(other) + eq.sub_eqs.extend(other.sub_eqs) return eq @@ -371,6 +387,8 @@ def __mul__(self, other): # adding sub equations eq.sub_eqs.append(self) eq.sub_eqs.extend(self.sub_eqs) + eq.sub_eqs.append(other) + eq.sub_eqs.extend(other.sub_eqs) return eq @@ -409,6 +427,8 @@ def __rmul__(self, other): # adding sub equations eq.sub_eqs.append(self) eq.sub_eqs.extend(self.sub_eqs) + eq.sub_eqs.append(other) + eq.sub_eqs.extend(other.sub_eqs) return eq @@ -442,4 +462,5 @@ def __str__(self): y = Variable("y") z = Variable("z") - ((y * z) + (x * y)).display_table() + eq = (y * z) + (x * y) + eq.display_table()