I have task (I must put operators between numbers):
8 7 6 9 2 5 4 3 1 = 2016
I can use + - * : (not obligatory all operators) and parentheses. I cannot change number positions.
Can matlab or wolfram solve this kind of tasks? If can, then how? Thanks.
The short answer is that by default it cannot.
There may be a method to design an algorithm to accomplish this problem, but the possible combinations of operators that can be used in combination with the fact that you can change which operator happens first (by parentheses) only adds to the possible total number of combinations to make this happen.
Not considering parentheses, knowing that there can be 4 different operations at any given time tells us that there are $4^8$ different ways these operators can be written, which is only 65536. But then adding to this parentheses means that you can force each operation to happen in any order, which will multiply this amount by $8!$ bringing our total number of combinations to $40320\cdot65536$ which is about 26 billion. As far as I know neither place has
Edit:
2016 = 8*7*6*(9-2+5-4-3+1) was a solution posted by Sirzh, but I would like to add that it isn't the only solution. Indeed there may be others, consider one alternative: $$2016 = 8\cdot7(6+(9-(2+(5-4))))\cdot3\cdot1$$