For example, using the times table problem from the previous page, this could be broken down in the following way:
num ← USERINPUT FOR number ← 1 TO 10 OUTPUT number * num ENDFOR
In larger programs, problems are decomposed further until it is easy to identify how each could be written as an individual subroutine in the program. This is useful to a development team, for example, as it means that the work can be divided between them. As the problem has been broken down into smaller sections, the subroutines can be reused to solve similar problems.