Скачать презентацию 1 Лекция 10 ЦВП Козьминых Н М дисциплина Скачать презентацию 1 Лекция 10 ЦВП Козьминых Н М дисциплина

Лекция 10. ЦВП.pptx

  • Количество слайдов: 19

1 Лекция 10. ЦВП Козьминых Н. М. дисциплина «Программирование» 1 Лекция 10. ЦВП Козьминых Н. М. дисциплина «Программирование»

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

Организация цикла 3 В организации цикла можно выделить следующие этапы: подготовка (инициализация) цикла (И); Организация цикла 3 В организации цикла можно выделить следующие этапы: подготовка (инициализация) цикла (И); выполнение вычислений цикла (тело цикла) (ТЦ); модификация параметров (М); проверка условия окончания цикла (ПУ). Козьминых Н. М.

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

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

6 Операторы цикла Цикл с предусловием. Пример 1 1. 2. 3. 4. 5. 6. 6 Операторы цикла Цикл с предусловием. Пример 1 1. 2. 3. 4. 5. 6. 7. 8. 9. Вычисление факториала целого положительное числа N!. private void btn. Decide_Click(. . . ){ long F; int i, N; N = Convert. To. Int 32(txt. N. Text); F = i = 1; while (i <= N) F = F *i++; // {F = F * i; i++; } txt. Result. Text = N + "! =" + F; } Козьминых Н. М.

7 Операторы цикла Цикл с предусловием. Пример 2 1. 2. 3. 4. 5. 6. 7 Операторы цикла Цикл с предусловием. Пример 2 1. 2. 3. 4. 5. 6. 7. 8. Задача итерационного вычисления вычисление суммы гармонического ряда: 1 + 1/2+1/3 +. . . с заданной точностью е private void btn. Decide_Click(. . . ){ int n = 1; double S = 0, eps; eps = Convert. To. Double(txt. Eps. Text); while(1. 0/n > eps && n < Int 32. Max. Value) S += 1. 0/n++; txt. Result. Text = "Cyммa = " + S; } Козьминых Н. М.

8 Операторы цикла Цикл с постусловием do оператор; while (выражение); Цикл повторяет свое выполнение, 8 Операторы цикла Цикл с постусловием do оператор; while (выражение); Цикл повторяет свое выполнение, пока значение выражения истинно, т. е. заключенное в нем условие цикла истинно. Выход из цикла происходит после того, как значение выражения станет ложным. Если выражение ложно, то операторы цикла выполняются минимум один раз. Козьминых Н. М.

9 Операторы цикла Цикл с постусловием. Пример 3 Вычисление факториала целого положительное числа N!. 9 Операторы цикла Цикл с постусловием. Пример 3 Вычисление факториала целого положительное числа N!. private void btn. Decide_Click(. . . ){ long F; int i, N; N = Convert. To. Int 32(txt. N. Text); F = i = 1; do F *= i++; while(i <= N); txt. Result. Text = N + "! =" + F; 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. } Козьминых Н. М.

10 Операторы цикла. Цикл с параметром for (выраж_1; выраж_2; выраж_3) оператор; Выражение 1 выполняется 10 Операторы цикла. Цикл с параметром for (выраж_1; выраж_2; выраж_3) оператор; Выражение 1 выполняется только один раз в начале цикла, определяет начальное значение параметра цикла. Выражение 2 – это условие выполнения цикла. Выражение 3 обычно определяет изменение параметра цикла. Оператор — тело цикла, которое может быть простым и составным. Козьминых Н. М.

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

12 Операторы цикла. Цикл с параметром. Пример 4 нахождение N!, различное написание: обычное F 12 Операторы цикла. Цикл с параметром. Пример 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 Задача итерационного вычисления - вычисление суммы 13 Операторы цикла. Цикл с параметром. Пример 5 Задача итерационного вычисления - вычисление суммы гармонического ряда: 1 + 1/2+1/3 +. . . с заданной точностью е обычное for (n = 1, S = 0; 1. 0 / n > eps && n < Int 32. Max. Value; n++) S += 1. 0 / n; с пустым телом цикла for(n = 1, S = 0; 1. 0 / n > eps && n < Int 32. Max. Value; S+=1. 0/n++); Козьминых Н. М.

Пример 6 14 Используя циклы while, do - while и for, написать три варианта Пример 6 14 Используя циклы while, do - while и for, написать три варианта программы получения на экране таблицы синусов для значений аргумента в диапазоне от 0 до π/2 с заданным значением шага. Козьминых Н. М.

15 Пример 6. for 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 15 Пример 6. for 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. private void btn. Decide_Click(. . . ){ double x, y, h; h = Convert. To. Double(txt. H. Text); h = h * Math. PI /180; lst. Box. Items. Add("x tsin(x)"); for (x = 0; x <= Math. PI / 2; x += h){ y = Math. Sin(x * Math. PI / 180); lst. Box. Items. Add(String. Format("{0: F 3} t{1: F 3}", x, y)); } } Козьминых Н. М.

16 Пример 6. while 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 16 Пример 6. while 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. private void btn. Decide_Click(. . . ){ double x, y, h; h = Convert. To. Double(txt. H. Text); h = h * Math. PI /180; x = 0; lst. Box. Items. Add("x tsin(x)"); while ( x <= Math. PI / 2){ y = Math. Sin(x * Math. PI / 180); lst. Box. Items. Add(String. Format("{0: F 3} t{1: F 3}", x, y)); x += h; } } Козьминых Н. М.

17 Пример 6. do while 1. 2. 3. 4. 5. 6. 7. 8. 9. 17 Пример 6. do while 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. private void btn. Decide_Click(. . . ){ double x, y, h; h = Convert. To. Double(txt. H. Text); h = h * Math. PI /180; x = 0; lst. Box. Items. Add("x tsin(x)"); do { y = Math. Sin(x * Math. PI / 180); lst. Box. Items. Add(String. Format("{0: F 3} t{1: F 3}", x, y)); x += h; } while (x <= Math. PI / 2); } Козьминых Н. М.

Пример 7 18 1. 2. 3. 4. 5. 6. 7. 8. Дано натуральное число Пример 7 18 1. 2. 3. 4. 5. 6. 7. 8. Дано натуральное число n. Вычислить private void btn. Decide_Click(. . . ){ int n, i; double sum; n = Convert. To. Int 32(txt. N. Text); sum = 0; for(i = 1; i <= n; i++) sum += (i+1. 0)/i; } Козьминых Н. М.

19 Спасибо за внимание Вопросы… Козьминых Н. М. 19 Спасибо за внимание Вопросы… Козьминых Н. М.