Очень часто возникает необходимость выполнить одну и ту же последовательность
действий несколько раз: например, для вычисления выражения an необходимо выполнить умножение на величину a n-1 раз. Для этого используются циклы. В данном листочке речь пойдет о цикле for
.
Рассмотрим задачу вычисления суммы всех натуральных чисел от 1 до n.
Для этого заведем переменную s
и к ней будем прибавлять значение переменной
i
, где i
будет принимать все значения от 1 до n.
На языке C++ это можно сделать при помощи цикла for
следующим образом:
int n, s=0, i; cin>>n; for (i=1; i<=n; ++i) { s=s+i; } cout<<s<<endl;
В этом примере последовательность инструкций в блоке, то есть инструкция s=s+i
будет выполнена многократно для всех значений переменной i
от 1 до n
,
то есть в результате переменная s
будет равна сумме всех натуральных чисел
от 1
до n
.
При использовании цикла for
необходимо задать три параметра (в круглых скобках
через точку с запятой).
Первый параметр – начальное значение переменной, задается в виде
присваивания переменной значения, в нашем случае – i=1
.
Второй параметр – конечное значение переменной, задается в виде условия на значение
переменной. Цикл будет исполняться, пока условие истинно, в нашем случае условие i<=n
означает,
что переменная i
будет принимать значения до n
включительно.
Третий параметр – шаг изменения переменной. Запись ++i
означает, что переменная i
будет увеличиваться на 1
с каждым новым исполнением цикла, запись --i
– уменьшаться.
В нашем примере мы могли бы сделать цикл, в котором переменная i
принимала бы все значения от n
до 1
, уменьшаясь при этом: for(i=n; i>0; --i)
.
Если хочется, чтобы значение переменной в цикле менялось не на 1, а на большую величину, то это можно сделать, например, так:
i=i+2
.
1
и 10
программа должна вывести 2 4 6 8 10
.
1 2 3 4 5 6 7 8 9 10
программа должна вывести 55
.
Сначала вводится количество чисел N. Затем вводится N целых чисел, программа должна вывести их сумму.
Например, при вводе 3 1 20 300
программа должна вывести 321
.
i
принимает значения от 10 до 99, проверьте, равна ли i
удвоенному произведению своих цифр.