There are many built-in functions to assist. It is a good first language, and provides an excellent growth path for the professional. You can rely on it. There's no setting up to do. They are not procedures or functions dressed up to look like statements.
Files are easy to use.
And if your program was running OK after all, you can resume execution again, as if nothing had happened. Dynamic arrays provide the means to write a general program for any size of array. You aren't bound by some artificial limit. You automatically obtain exactly the amount of storage you need for an array. Even more importantly, debugging is simplified, because the error messages are specific to complex number operations.