Really depends on what you want to do. I use a lot of Mathematica, python, ruby and fortran.
For doing maths/physics, learning Mathematica will definitely help with everything. It is a very powerful visualizer (it can plot ANYTHING). It has a very powerful algebra engine. Overall, it is an excellent aid for doing assignments and pretty much everything. However, it is a terrible programming language.
As for python/ruby/MATLAB..., these are good scripting languages, which are useful in doing very repetitive things. (It's a bit harder to do this in Mathematica.) If you end up doing numerical methods and so on, you'll find yourself using one of these scripting language. MATLAB perhaps is the best way to start, as it has many in-built math functions. Python on the other hand, you must import modules and etc to get the math functionality.
When you get down to hardcore calculations, i.e. programs that will take days and days to run, you need to use FORTRAN or C, these are the fastest languages, but they are a bit clumsy to work with.