Практическое занятие № 3
Тема:
Циклический оператор с предусловием и с постусловием
Алгоритм, в котором есть последовательность операций (группа
операторов), которая должна
быть выполнена несколько раз, называется
циклическим
, а сама последовательность операций именуется
циклом
. В
программе цикл может быть реализован при помощи операторов while, do
While и for.
Цикл while (цикл с предусловием)
Когда мы
не знаем, сколько итераций должен произвести цикл, нам
понадобится цикл
while
или
do...while
. Синтаксис цикла
while
в C++
выглядит следующим образом.
while
(Условие) {
Тело цикла;
}
Данный цикл будет выполняться, пока условие, указанное в круглых скобках
является истиной.
Пример 1.
Составить блок-схему и консольное приложение на
циклический процесс
с использованием оператора
WHILE.
𝒚 = 𝒙
𝟐
+ 𝒆
𝒙
,
x
[2,3]
,
h
x
=0.1
#include
#include
usingnamespace
std;
int
main(){
float
x,y;
x=2;
while
(x<=3){
y=pow(x,2)+exp(x);
x=x+0.1;
cout<<
"x="
<
" y="
<
return 0;}
конец
вывод
x,y
x≤3
Да
Нет
x =
2
начало
1
3
2
5
7
4
x=x+0.1
6
Цикл do while (цикл с постусловием)
Цикл
do while
очень похож на цикл
while
. Единственное их
различие в том, что при выполнении цикла
do while
один
проход цикла
будет выполнен независимо от условия.
Пример 2
. Составить блок-схему и консольное приложение на циклический
процесс с использованием оператора
do while
𝒚 = 𝟓𝐬𝐢𝐧 𝒙
𝟐
,
x
[2,4]
,
h
x
=0.2
#include
#include
usingnamespace
std;
int
main(){
float
y, x=2;
do
{y=5*sin(pow(x,2));
cout<<
"x="
<
" y="
<
x=x+0.2;}
while
(x<=4);
return 0; }
Для реализации циклического алгоритма с предусловием в С++
предусмотрено два оператора цикла
while
и
for
. По одной и той же блок-
схеме с предусловием можно написать две программы, одну – с оператором
while
, другую – с оператором
for
. Оператор
while
удобно использовать,
если неопределенно, сколько итераций нужно сделать, или это трудно
сделать. Оператор
for
удобно использовать, когда мы заранее знаем
количество итераций.
Приведем общий вид блок-схем и общий вид записи операторов
while
и
for
:
конец
вывод
x,y
x>4
Да
Нет
x =2
начало
1
6
2
4
7
3
x=x+0.2
5
Оператор while:
x=xn;
while(x<=xk){
Тело_цикла;
x=x+hx;
}
Операторfor:
for(x=xn; x<=xk; x=x+hx){
Тело_цикла;
}
Для реализации циклического алгоритма с постусловием в С++
предусмотрен оператор
do while
. Существует ряд задач, где изменяется
сразу две переменные. Тогда используют вложенные циклы. Внутри одного
цикла (внешнего) организуют другой цикл (внутренний).
Для ясности будем делать
внешний цикл по переменной , а внутренний –
по переменной . Обозначим переменные:
–
начальное значение
–
конечное значение
– шаг по переменной
– начальное значение
– конечное значение
– шаг по переменной . Приведем блок-
схему и вид записи операторов цикла с предусловием: