Составители:
Рубрика:
1. Если < Условие > равно False, то вход в цикл не выполняется, управле-
ние передается оператору, следующему непосредственно за операторами
тела
цикла. Так что при определенной ситуации цикл может ни разу не выполниться.
2.
Если же < Условие > равно True, то происходит вход в цикл и одно-
кратное выполнение операторов его тела. Как только достигнем конца тела
цикла, управление снова передается на его заголовок, где снова вычисляется
< Условие >.
3.
Если значение < Условия > все еще равно True (что зависит от изме-
нения значений переменных во время предыдущего выполнения операторов
цикла), то тело цикла выполняется еще один раз, и так далее. Как только оче-
редное вычисление < Условия > цикла достигнет значения
False, работа цик-
ла завершается.
Рассмотрим работу цикла
while в задачах 1–2.
Задача 1
При вводе осуществить проверку длины вводимой последовательности.
Program Lab5_1;
Var
N: integer;
BEGIN {1}
ReadLn (N);
While N < = 0 Do
Begin {2}
WriteLn ('Bведите длину последовательности N = ');
ReadLn (N);
End; {2}
WriteLn ('Длина последовательности N = ', N);
END. {1}
Пояснения к задаче 1
До первого входа в цикл переменной N уже должно быть присвоено на-
чальное значение соответственно условию решаемой задачи.
N – длина последовательности, что влечет за собой необходимость вы-
полнения логического условия N > 0 (длина не может быть отрицательной).
До тех пор пока
мы будем вводить отрицательное или равное нулю число,
цикл будет работать и требовать «Bведите длину последовательности N = ».
Так как в цикле имеем два оператора, необходимо ставить операторные
скобки Begin – End. В фигурных скобках {2} стоит номер операторных ско-
бок. Напоминаем, что в фигурных скобках ставится комментарий, служащий
для пояснения работы программы. Комментарий не вызывает никаких дейст-
вий в программе, и его можно убрать без последствий для работы программы.
Задача 2
Рассмотрим программу с использованием оператора цикла с предуслови-
ем, когда в качестве логического < Условия > стоит выражение 2*A < = 3*N +1.
60
1. Если < Условие > равно False, то вход в цикл не выполняется, управле- ние передается оператору, следующему непосредственно за операторами тела цикла. Так что при определенной ситуации цикл может ни разу не выполниться. 2. Если же < Условие > равно True, то происходит вход в цикл и одно- кратное выполнение операторов его тела. Как только достигнем конца тела цикла, управление снова передается на его заголовок, где снова вычисляется < Условие >. 3. Если значение < Условия > все еще равно True (что зависит от изме- нения значений переменных во время предыдущего выполнения операторов цикла), то тело цикла выполняется еще один раз, и так далее. Как только оче- редное вычисление < Условия > цикла достигнет значения False, работа цик- ла завершается. Рассмотрим работу цикла while в задачах 1–2. Задача 1 При вводе осуществить проверку длины вводимой последовательности. Program Lab5_1; Var N: integer; BEGIN {1} ReadLn (N); While N < = 0 Do Begin {2} WriteLn ('Bведите длину последовательности N = '); ReadLn (N); End; {2} WriteLn ('Длина последовательности N = ', N); END. {1} Пояснения к задаче 1 До первого входа в цикл переменной N уже должно быть присвоено на- чальное значение соответственно условию решаемой задачи. N – длина последовательности, что влечет за собой необходимость вы- полнения логического условия N > 0 (длина не может быть отрицательной). До тех пор пока мы будем вводить отрицательное или равное нулю число, цикл будет работать и требовать «Bведите длину последовательности N = ». Так как в цикле имеем два оператора, необходимо ставить операторные скобки Begin – End. В фигурных скобках {2} стоит номер операторных ско- бок. Напоминаем, что в фигурных скобках ставится комментарий, служащий для пояснения работы программы. Комментарий не вызывает никаких дейст- вий в программе, и его можно убрать без последствий для работы программы. Задача 2 Рассмотрим программу с использованием оператора цикла с предуслови- ем, когда в качестве логического < Условия > стоит выражение 2*A < = 3*N +1. 60
Страницы
- « первая
- ‹ предыдущая
- …
- 58
- 59
- 60
- 61
- 62
- …
- следующая ›
- последняя »