Лабораторная работа № 3. Программирование с использованием циклов

Цель работы: изучение операторов организации циклов, приемов создания программ, обеспечивающих выполнение циклических процессов

Объем работы: 4 часа

Теоретическая часть

Циклическая структура процесса вычислений определяет, что для получения результата некоторые действия необходимо выполнить несколько раз.

Для реализации циклических процессов используют операторы циклов. В теории программирования выделяют несколько основных видов циклических конструкций:

· счетный цикл (рисунок 3,а);

· цикл-пока (рисунок 3, б);

· цикл-до (рисунок 3, в).

Лабораторная работа № 3. Программирование с использованием циклов - student2.ru

Рисунок 3 - Структура циклов, реализованных в С++:

счетный цикл (а), цикл-пока (б) и цикл-до (в)

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

В С++ оператор счетного цикла for имеет следующий систаксис:

for (<Выражение1>;<Выражение2>;<Выражение3>)<Оператор>;

где:

Выражение1 – инициализирующее выражение; представляет собой последовательность описаний, определений и выражений, разделенных запятыми. Выполняется только один раз в начале цикла и задает начальные значения переменным цикла. Может отсутствовать, при этом точка с запятой остается.

Выражение2 –выражение условия; определяет условие завершения цикла, в частности, предельное значение параметра цикла. Может отсутствовать, при этом точка с запятой остается.

Выражение3 – список выражений, которые выполняются на каждой итерации цикла после тела цикла, но до следующей проверки условия. Обычно определяют изменение параметра цикла. Может отсутствовать.

Оператор – тело цикла. Может быть любым оператором С++, в том числе и составным оператором (блоком операторов). Составной оператор применяется, если тело цикла содержит более одного простого оператора. Оператор тела цикла может отсутствовать, в этом случае вмесо него ставится точка с запятой.

Примеры операторов счетного цикла

1. for(int i=0,float s=0; i<n; i++,s+=i); - отсутствует тело цикла

2. for(int i=0,float s=0;i<n;i++)s+=i; - есть все компоненты

3. int i=0;float s=0;

for(;i<n;s+=i++); - отсутствует инициализирующее выражение и тело цикла

4. for(;i<n;)s+=i++; ++); - отсутствует инициализирующее выражение

5. int i;float s; s=0;

for(i=n; i>0;i--) s=s+i;

6. for(;;); - бесконечный цикл.

Пример 1. Разработать программу вычисления суммы n первых натуральных чисел. n вводится с клавиатуры.

Сумма определяется методом накопления. Количество суммируемых чисел известно, поэтому используем цикл с заданным количеством повторений. На каждой итерации цикла к сумме будем добавлять переменную цикла, которая будет изменяться от 1 до n. Перед циклом переменную суммы необходимо обнулить. На рисунке 4 приведена схема алгоритма программы.

Лабораторная работа № 3. Программирование с использованием циклов - student2.ru

Рисунок 4 – Схема алгоритма вычисления суммы n натуральных чисел

Текст программы приведен ниже:

#include "stdafx.h"

#include <stdio.h>

int main()

{ int i,n,s;

puts(“Input n”);

scanf(“%d”,&n);

for (i=1,s=0;i<=n;i++) s+=i;

printf("Sum=%5d n=%4d\n",s,n);

return 0;

}

Итерационные циклы.Итерационными называются циклы, в которых количество повторений заранее неизвестно, а определяется некоторой целевой функцией. В частности, это может быть точность вычислений. Примерами подобных циклов являются нахождение суммы бесконечного ряда, значения интеграла на отрезке, длины кривой и т.д. В С++ итерационные циклы реализуются с помощью двух видов циклов: цикла-пока и цикла-до.

Наши рекомендации