For example, if one were provided with the set [3 1 3 -4 -6], the resulting answers would be [3 1 -4], [3 1 -4], an [3 3 -6], as these are the three sets of three values which sum to zero from the provided set. Notice that the first and second solution appear to be the same, but correspond to two solutions for the two different 3s in the provided set.
Your code should return the answer in 2D array format, where each row is a solution set (3 columns per row). If no solution sets can be found for a given input, the code should output a value of zero.
For this assignment you should find or develop an algorithm for finding these solutions. Once you have found or developed this algorithm, create a flowchart for this algorithm. Please conform to the algorithm format outlined in class.
Your code should be adequately commented, such that one would be able to understand your code by reading comments only. Your code should also include an initial code block giving a brief overview of how to use the function and your solution process, so that someone can query your program for this code block using the help command.
EXTRA CREDIT:
Develop and implement a method to identify and remove and solutions which are numerically equivalent, so that the result from your code doesn't have any repeated solutions. This should be able to match solutions which contain the same values but in different orders. This means that if the sets [3 1 -4] and [3 -4 1] are in the solution your method should still identify them as equivalent and only return one of them.