The Concept of Action  49  Jumps from outside of a structured statement into that statement are  not allowed. Hence, these examples are incorrect.  Incorrect examples:  A goto statement should be reserved for unusual or uncommon  situations  where  the  natural  structure of an  algorithm  cannot be  reasonably expressed with other structured statements. A common  situation is the handling of an unexpected type of input data.  A good  rule is  to avoid the use of jumps to express regular iterations and  conditional  execution  of statements,  for  such  jumps destroy  the  reflection  of the  structure  of computation  in  the  textual  (static)  structures of the program.  Moreover,  the  lack  of correspondence  between  textual  and  computational (static and dynamic) structure is extremely detrimental  to the clarity of the program and makes the task of verification much  more difficult. The presence of goto's in a Pascal program is often an  indication that the programmer has not yet learned "to think" in Pascal  (as the goto is a necessary construction in some other programming  languages).  a)  for  I  := 1  to 10 do  begin Sl;  3:  S2  end;  goto 3  b)  if B then goto 3;  if B1  then  3:  S  c)  procedure P:  procedure Q;  begin  ...  3:  S  end;  begin  ...  goto 3  end. 