Back to manual index :: goto and label :: About: The goto statement in Pascal provides an unconditional jump from the goto to a label statement. goto forces a jump to a label, regardless of nesting. goto is mostly used to force a termination of heavily nested code. Never jump into or out of try statements, or into a loop or conditional block. A label is a name for a location in the source code to which can be jumped to from another location with a goto statement :: Use: goto label :: Example (color coordinated to help follow code):
program testgoto;
label republican;
label democrat;
label finish;
var choice : string;
begin
writeln('"R" for republican, "D" for democrat');
read(choice);
if choice = 'R' then
writeln('you choose republican');
if choice = 'R' then
goto republican;
if choice = 'D' then
writeln('you choose democrat');
if choice = 'D' then
goto democrat;
goto finish;
republican:
writeln('Reagan');
writeln('Bush');
goto finish;
democrat:
writeln('Carter');
writeln('Clinton');
finish:
writeln('done');
end.
|