Excellent question, I have used Mathcad, MATLAB, and Maple extensively, so i can answer for 3 out of the 4:
MATLAB:
most powerful for solving unique problem that require a great deal of iteration, loop manipulation, coding from the ground up. I like programming in MATLAB using M code, which is like C++ except more math related prewritten functions and less instruction needed to handle memory allocation. Also, the most extensive and powerful array/data struct handling capabilities I'm aware of.
I would use it to study discrete problems, heavy plug and chug problems, unique geometries that do not have close form solutions, neural network or other n dimensional curve fitting problems....MATLAB has an absolutely impressive library of functions that can do many jobs for you when supplied the necessary inputs/outputs. And if its not exactly what you want, you can usually look at the M code and modify to fit your problem!
Mathcad:
huge advantage over MATLAB is your mathematics look like mathematics!
all the calculus operators and formulation match the classical format and this makes it easy to explain your method to a friend, professor, boss, etc.
easier to read for sure. you can move your calculations around in free space however you want so it looks nice. the downside is its more difficult to see and manipulate arrays/data structs acting behind the scenes, not set up for more computer science application problem like image processing, etc
Maple:
if you're a math major then Maple, along with mathmatica im assuming, will be very important. good for more advanced mathmatics of continuous functions like fourier series, diff eqs, etc where you want to find solutions to your eqn(s) and formulate derivations. also the math is easier to read than MATLAB, similar in this way to Mathcad, although you must enter calculation steps in a more rigid line by line manner than Mathcad.
Overall:
I use Mathcad to do moderately difficult hw problems in grad school where the analytical solution is given/known. I use Maple to derive/explain the mathematics behind analytical solution when its form is unknown/unclear. Finally, I use MATLAB to work on deep unsolved research problem where no solution is known, and perhaps the approach is not yet fully developed.
To all those who are reading, I hope this helps!
