- •Циклы методические указания
- •1.2 Оператор цикла с параметром for
- •For ( выражение_1 ; выражение_2 ; выражение_3 ) оператор;
- •1.3 Оператор цикла с предусловием while
- •While ( выражение ) оператор;
- •1.4 Оператор с постусловием do…while
- •Do оператор while ( выражение );
- •1.5 Оператор break
- •1.6 Оператор continue
- •2 Задание
- •3 Контрольные вопросы
- •Приложение а Задания на вычисление суммы ряда с использованием оператора цикла for
- •Приложение б Задания на вычисление значения выражений с использованием оператора цикла for
- •Приложение в Задания на вычисление значения выражений с использованием операторов цикла с внутренним разветвлением
- •Приложение г Задания на вычисление значения выражений с использованием операторов цикла с предусловием и постусловием
1.5 Оператор break
Оператор break обеспечивает прекращение выполнения самого внутреннего из объединяющих его операторов do, for, while. После выполнения оператора break управление передается оператору, следующему за прерванным.
1.6 Оператор continue
Оператор continue, как и оператор break, используется только внутри операторов цикла, но в отличие от него выполнение программы продолжается не с оператора, следующего за прерванным оператором, а с начала прерванного оператора. Формат оператора следующий:
continue;
Пример:
int main()
{ int a,b;
for (a=1,b=0; a<100; b+=a,a++)
{ if (b%2) continue;
... /* обработка четных сумм */
}
return 0;
}
Когда сумма чисел от 1 до а становится нечетной, оператор continue передает управление на очередную итерацию цикла for, не выполняя операторы обработки четных сумм.
Оператор continue, как и оператор break, прерывает самый внутренний из объемлющих его циклов.
2 Задание
2.1Составить программу, определяющую сумму .
Для решения поставленной задачи сначала необходимо выявить закономерность построения ряда, т.е. зависимость вида слагаемого от его порядкового номера. В данной задаче общий вид слагаемого с номером i будет иметь вид: 1/i, где i изменяется от 1 до 9.
Накопление суммы производится по шагам: на каждом шаге цикла к имеющемуся уже значению суммы должно прибавляться очередное слагаемое.
Фрагмент программы с использованием оператора цикла с параметром:
float s;
s=0;
for ( int i=1; i<=9; i++) {
s=s+1/i;
}
сout <<”s=”<< s ;
2.2 Составить и отладить программу с использованием цикла for в соответствии с указанным преподавателем вариантом из приложения А и Б.
2.3 Программирование алгоритмов циклической структуры с внутренним разветвлением. Написать программу вычисления функции из. Заполнить таблицу значений при с шагом .
Варианты заданий выбираются в соответствии с указанным преподавателем вариантом из таблицы в Приложения В.
2.4 Вычислить функцию y=x2+3, если x изменяется от 0 до 1 с шагом 0.1.
Для разных значений аргумента предстоит вычислить значение функции по одной и той же формуле, поэтому для решения задачи необходимо использовать цикл. Для решения задачи воспользуемся циклом с предусловием и циклом с постусловием.
Фрагмент программы с использованием цикла с предусловием:
x=0;
while (x<=1) {
y=x*x+3;
Cout <<”x=”<< x<<”y=”<<y ;
x+=0.1;
}
Фрагмент программы с использованием цикла с постусловием:
x=0;
do {
y=x*x+3;
Cout <<”x=”<< x<<”y=”<<y ;
x+=0.1;
}
while (x>1);
2.5 Составить и отладить программу с использованием цикла с предусловием.
Вычислить значение функции y=f(x), начиная от значения x=xнач до значения x=xкон с шагом s в соответствии с указанным преподавателем вариантом из приложения Г.
2.6 Решить поставленную в пункте 2.5 задачу с использованием цикла с постусловием.
3 Контрольные вопросы
Что называется циклом, телом цикла?
Какова структура оператора цикла for? Как выполняется цикл for?
Какова структура цикла с предусловием? Как выполняется этот цикл?
Какова структура цикла с постусловием? Как выполняется этот цикл?
Каково минимальное количество исполнений циклов с пред- и постусловием? С чем это связано?
Что такое вложенные циклы?
Сколько раз выполнится цикл: for (i = 1; i<=-1; i++) k:=k*i ?
Сколько раз выполнится цикл: for (i= -1; i<=1;i++) k:=k*i ?
Сколько раз выполнится цикл: m=123; while (m<>0) m=m%10 ?