diff --git a/resources/simplex/base.py b/resources/simplex/base.py index 802a7fa274da162478677605962b0dfab35b897c..a0a03bd728447b63d3828ccf6fb766d70ed20e19 100644 --- a/resources/simplex/base.py +++ b/resources/simplex/base.py @@ -488,26 +488,31 @@ class SimplexBase(): logger.info('') # Print objective function. - print_string = ' Max: ' + print_string = ' Max: z= ' for index in range(len(self._vector_c)): if index not in self._b_array: # Check if last index. if index == (len(self._vector_c) - 1): - print_string += ' = {0:>5} '.format(-self._vector_c[index]) + if self._vector_c[index] >= 0: + # Coefficient is negative. + print_string += ' {0:>5}'.format('-{0}'.format(self._vector_c[index])) + else: + # Coefficient is positive. + print_string += ' {0:>5}'.format('+{0}'.format(-self._vector_c[index])) else: if self._vector_c[index] == 0: # Coefficient is 0. Print nothing. print_string += ' ' - elif self._vector_c[index] < 0: + elif self._vector_c[index] > 0: # Coefficient is negative. print_string += ' {0:>5} x{1}'.format( - '-{0}'.format(-self._vector_c[index]), + '+{0}'.format(self._vector_c[index]), index + 1, ) else: # Coefficient is positive. print_string += ' {0:>5} x{1}'.format( - '+{0}'.format(self._vector_c[index]), + '-{0}'.format(-self._vector_c[index]), index + 1, ) logger.info(print_string)