Содержание

Слайд 2

Циклические вычислительные процессы (ЦВП) Козьминых Н.М. Циклическими называются программы, содержащие циклы.

Циклические вычислительные процессы (ЦВП)

Козьминых Н.М.

Циклическими называются программы, содержащие циклы.
Цикл — это

многократно повторяемый участок программы.
Итерация – одно выполнение операторов цикла, повторяемого участка программы.
Слайд 3

Организация цикла Козьминых Н.М. В организации цикла можно выделить следующие этапы:

Организация цикла

Козьминых Н.М.

В организации цикла можно выделить следующие этапы:
подготовка (инициализация)

цикла (И);
выполнение вычислений цикла (тело цикла) (ТЦ);
модификация параметров (М);
проверка условия окончания цикла (ПУ).
Слайд 4

Операторы цикла Козьминых Н.М. Существуют три типа операторов цикла: цикл с

Операторы цикла

Козьминых Н.М.

Существуют три типа операторов цикла:
цикл с предусловием;
цикл с постусловием;
цикл

с параметром.
Слайд 5

Операторы цикла Цикл с предусловием Козьминых Н.М. while (выражение) оператор; Цикл

Операторы цикла Цикл с предусловием

Козьминых Н.М.

while (выражение)
оператор;
Цикл повторяет свое выполнение, пока

значение выражения истинно, т. е. заключенное в нем условие цикла истинно.
Выход из цикла происходит после того, как значение выражения станет ложным.
Если выражение ложно, то операторы цикла могут ни разу не выполниться.
Слайд 6

Операторы цикла Цикл с предусловием. Пример 1 Козьминых Н.М. Вычисление факториала

Операторы цикла Цикл с предусловием. Пример 1

Козьминых Н.М.

Вычисление факториала целого положительное числа

N!.
private void btnDecide_Click(...){
long F;
int i, N;
N = Convert.ToInt32(txtN.Text);
F = i = 1;
while (i <= N)
F = F *i++; // {F = F * i; i++;}
txtResult.Text = N + "! =" + F;
}
Слайд 7

Операторы цикла Цикл с предусловием. Пример 2 Козьминых Н.М. Задача итерационного

Операторы цикла Цикл с предусловием. Пример 2

Козьминых Н.М.

Задача итерационного вычисления - вычисление

суммы гармонического ряда: 1 + 1/2+1/3 + ...
с заданной точностью е
private void btnDecide_Click(...){
int n = 1;
double S = 0, eps;
eps = Convert.ToDouble(txtEps.Text);
while(1.0/n > eps && n < Int32.MaxValue)
S += 1.0/n++;
txtResult.Text = "Cyммa = " + S;
}
Слайд 8

Операторы цикла Цикл с постусловием Козьминых Н.М. do оператор; while (выражение);

Операторы цикла Цикл с постусловием

Козьминых Н.М.

do
оператор;
while (выражение);
Цикл повторяет свое выполнение,

пока значение выражения истинно, т. е. заключенное в нем условие цикла истинно.
Выход из цикла происходит после того, как значение выражения станет ложным.
Если выражение ложно, то операторы цикла выполняются минимум один раз.
Слайд 9

Операторы цикла Цикл с постусловием. Пример 3 Козьминых Н.М. Вычисление факториала

Операторы цикла Цикл с постусловием. Пример 3

Козьминых Н.М.

Вычисление факториала целого положительное числа

N!.
private void btnDecide_Click(...){
long F;
int i, N;
N = Convert.ToInt32(txtN.Text);
F = i = 1;
do
F *= i++;
while(i <= N);
txtResult.Text = N + "! =" + F;
}
Слайд 10

Операторы цикла. Цикл с параметром Козьминых Н.М. for (выраж_1; выраж_2; выраж_3)

Операторы цикла. Цикл с параметром

Козьминых Н.М.

for (выраж_1; выраж_2; выраж_3)
оператор;
Выражение 1 выполняется

только один раз в начале цикла, определяет начальное значение параметра цикла.
Выражение 2 – это условие выполнения цикла.
Выражение 3 обычно определяет изменение параметра цикла.
Оператор — тело цикла, которое может быть простым и составным.
Слайд 11

Операторы цикла. for и while Козьминых Н.М. Для сравнения операторs for и while

Операторы цикла. for и while

Козьминых Н.М.

Для сравнения операторs for и while

Слайд 12

Операторы цикла. Цикл с параметром. Пример 4 Козьминых Н.М. нахождение N!,

Операторы цикла. Цикл с параметром. Пример 4

Козьминых Н.М.

нахождение N!, различное написание:
обычное
F =

1; for(i = 1; i <= N; i++) F = F * i;
инициализация нескольких переменных через «,»
for(F = 1, i = 1; i <= N; i++) F = F * i;
с пустыми выражениями
F = 1; i = 1; for (; i <= N; i++) F = F * i;
оператор записан в выражении 2
for(F = l, i = l; i <= N; F = F * i, i++);
оператор записан в выражении 3
for(F = l, i = l; i <= N; F *= i++);
Слайд 13

Операторы цикла. Цикл с параметром. Пример 5 Козьминых Н.М. Задача итерационного

Операторы цикла. Цикл с параметром. Пример 5

Козьминых Н.М.

Задача итерационного вычисления - вычисление

суммы гармонического ряда: 1 + 1/2+1/3 + ...
с заданной точностью е
обычное
for (n = 1, S = 0; 1.0 / n > eps && n < Int32.MaxValue; n++)
S += 1.0 / n;
с пустым телом цикла
for(n = 1, S = 0;
1.0 / n > eps && n < Int32.MaxValue;
S+=1.0/n++);
Слайд 14

Пример 6 Козьминых Н.М. Используя циклы while, do - while и

Пример 6

Козьминых Н.М.

Используя циклы while, do - while и for, написать

три варианта программы получения на экране таблицы синусов для значений аргумента в диапазоне от 0 до π/2 с заданным значением шага.
Слайд 15

Пример 6. for Козьминых Н.М. private void btnDecide_Click(...){ double x, y,

Пример 6. for

Козьминых Н.М.

private void btnDecide_Click(...){
double x, y, h;

h = Convert.ToDouble(txtH.Text);
h = h * Math.PI /180;
lstBox.Items.Add("x \tsin(x)");
for (x = 0; x <= Math.PI / 2; x += h){
y = Math.Sin(x * Math.PI / 180);
lstBox.Items.Add(String.Format("{0:F3} \t{1:F3}", x, y));
}
}
Слайд 16

Пример 6. while Козьминых Н.М. private void btnDecide_Click(...){ double x, y,

Пример 6. while

Козьминых Н.М.

private void btnDecide_Click(...){
double x, y, h;
h

= Convert.ToDouble(txtH.Text);
h = h * Math.PI /180;
x = 0;
lstBox.Items.Add("x \tsin(x)");
while ( x <= Math.PI / 2){
y = Math.Sin(x * Math.PI / 180);
lstBox.Items.Add(String.Format("{0:F3} \t{1:F3}", x, y));
x += h;
}
}
Слайд 17

Пример 6. do while Козьминых Н.М. private void btnDecide_Click(...){ double x,

Пример 6. do while

Козьминых Н.М.

private void btnDecide_Click(...){
double x, y, h;

h = Convert.ToDouble(txtH.Text);
h = h * Math.PI /180;
x = 0;
lstBox.Items.Add("x \tsin(x)");
do
{
y = Math.Sin(x * Math.PI / 180);
lstBox.Items.Add(String.Format("{0:F3} \t{1:F3}", x, y));
x += h;
} while (x <= Math.PI / 2);
}
Слайд 18

Пример 7 Козьминых Н.М. Дано натуральное число n. Вычислить private void

Пример 7

Козьминых Н.М.

Дано натуральное число n. Вычислить
private void btnDecide_Click(...){
int n,

i;
double sum;
n = Convert.ToInt32(txtN.Text);
sum = 0;
for(i = 1; i <= n; i++)
sum += (i+1.0)/i;
}
Слайд 19

Операторы перехода (прерывания) continue Козьминых Н.М. continue – прерывание текущей итерации.

Операторы перехода (прерывания) continue

Козьминых Н.М.

continue – прерывание текущей итерации.
Используется, если выполнение

очередного шага цикла требуется завершить до того, как будет достигнут конец тела цикла
Слайд 20

Операторы перехода (прерывания) break Козьминых Н.М. break – прерывание цикла. break

Операторы перехода (прерывания) break

Козьминых Н.М.

break – прерывание цикла.
break – прерывание case в

операторе switch.
Используется для альтернативного выхода из самого внутреннего цикла, то есть переходит к первому оператору, следующему за текущим оператором цикла.
Слайд 21

Операторы перехода (прерывания) return Козьминых Н.М. return - производит досрочный выход

Операторы перехода (прерывания) return

Козьминых Н.М.

return - производит досрочный выход из текущей функции.
return

- возвращает значение результата функции.
Слайд 22

Примеры Козьминых Н.М.

Примеры

Козьминых Н.М.