Does anyone know how to do this without using subroutine?
Yes, you just string all the files together into one giant file. Why would you want to do that and make it more difficult? You would still need some Step Relays to activate or deactive the different routines. Note that only one subroutine should be active at a time, and when the active one is finished, it either calls the next subroutine, or returns to the main.
From my understanding, they want the car to move to the 4th floor and stay there. Is that all they wanted? All of the U3, U4, U5, and so on is very confusing to me. Which one of the subroutine do I use to do this exercise?
The answer is going to shock you: To do Exercise 2, you need the Main Ladder 2, AND these Subroutines:
SBR3 (Called U3 in the Main, for some obscure reason. Initialization - of course you have to do the preliminary variable set-up),
SBR4 - (Called U4 in the Main. Only part of this one, the rungs that check for floor requests on the 4th Floor)
SBR5 (Called U5 in the Main. Next Request, or Wait - You might as well do all of this one - no harder than just doing part for the 4th floor!)
SBR6 (Called U6 in the Main. Close Door and Move - you could do without it and leave the door open, but then you will have to later rewrite your entire routine when you do Exercise 3!)
SBR7 (Called U7 in the Main. Track Car Movement - just the rungs that that check for presence of car on 4th floor)
SBR8 (Called U8 in the Main. Stop and Open Door- you have to stop the thing, but if you did not close the door in SBR 6, then you could sluff off that part, but you will have to do it later in Exercise 3, so why not set up things correctly on the first go-around?)
You see, the truth is that when you start doing programs that are similar to real-world programming problems (for entire systems, not just one little motor), you have to consider the entire problem. It becomes difficult to separate out parts and ONLY do 1 little part, without considering how that part is going to fit into the whole. That is why it is important to develop an overall program organization plan - the divisions or subroutines that you are going to divide it into. Otherwise it becomes overwhelming and very hard to find your way around in the program.
Notice that if you DO eliminate the subroutines for Exercise 2, and only do the part to make a crippled elevator go to the 4th floor, then for your next trick, your instructor is going to require you to do the full Exercise 3, where you must have all the subroutines and all the elevator functions and all 4 floors! So you would be wise only to figure it out once and set it up correctly from the start.