Оператор безусловного перехода
Помимо операторов условного перехода существует также оператор безусловного перехода goto. Формат:
goto метка;
Оператор goto переходит при выполнении программы к определенному оператору программы, перед которым находится метка. Метка должна быть описана в разделе описания меток той программы (процедуры или функции), в которой она используется. Нельзя перейти из одной процедуры или функции в другую. Необходимо, чтобы в программе существовал оператор, отмеченный указанной меткой. Она записывается перед оператором и отделяется от него двоеточием.
Пример: label 1; begin ... goto 1; ... 1: WriteLn('Переход к метке 1'); end.
Учтите! Само понятие структурного программирования и общепринятый стиль программирования на структурных языках НЕ ПРИВЕТСТВУЕТ применение меток и операторов перехода в программах. Это затрудняет понимание программы, как автором, так и потребителями, кроме того, применение меток отрицательно сказывается на эффективности генерируемого кода. Операторы повторений В языке Турбо Паскаль имеются три оператора, позволяющих запрограммировать повторяющиеся фрагменты программ (циклы). Это операторы while, repeat, for.
Оператор цикла while-do (цикл с предусловием)
Общий вид записи:
While <условие> do begin <оператор 1>; ... < оператор n> End;
Запись означает «пока выполняется <условие>, делать». Инструкция while-do означает «пока выполняется <условие>, делать» и выполняется следующим образом: сначала проверяется условие. Если оно истинно, выполняются < оператор 1>...< оператор n> и так далее. Если же условие ложно, выполнение считается законченным, и программа переходит к обработке следующих команд. Таким образом, если условие с самого начала оказалось ложным, < оператор 1>...< оператор n> не будут выполнены ни разу. В цикле while-do <условие> - это условие выполнения цикла: пока оно истинно, программа из цикла не выйдет. В том случае, если внутри цикла стоит только один оператор, пара begin - end может отсутствовать, если операторов больше одного, то пара begin - end обязательна, так как иначе будет выполняться только один оператор, стоящий сразу после слова do.
Пример: Надо вычислить сумму S=1+1/2+1/3+...+1/50
VAR S: REAL; N:INTEGER; BEGIN S:=0; N:=1; WHILE N<=50 DO BEGIN S:=S+1/N; N:=N+1; END; WRITELN(' S=',S); END.
Цикл-до repeat-until (цикл с постусловием)
Общий вид записи:
Repeat < оператор 1>; ... < оператор n> until <условие>;
Инструкция repeat-until означает «повторять до тех пор, пока не будет выполнено <условие>» и выполняется следующим образом: сначала выполняются < оператор 1>...< оператор n>. Затем проверяется условие. Если оно ложно, происходит возврат с выполнению <оператор 1>...<оператор n>. Если условие истинно, цикл считается выполненным и программа переходит к обработке следующих команд. Таким образом, в цикле repeat-until <условие> - это условие завершения цикла: цикл повторяется, пока оно ложно.
Пример: VAR S: REAL; N:INTEGER; BEGIN S:=0; N:=1; REPEAT S:=S+1/N; N:=N+1; UNTIL N>50; WRITELN(' S=',S); END.
Читайте также: IV. Циклдік оператор алгоритмдерін программалау Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|