Все программы с циклом for, которые мы до этого писали нельзя назвать универсальными. Потому что мы задавали сами число повторений тела цикла.
А что делать, если количество повторений будет зависеть от какого-либо другого значения? Например, пользователь сам хочет задать количество повторений цикла.
Что делать в этом случае?
Все очень просто. Вместо числовых начальных и конечных значений, мы можем использовать любые переменные, которые могут как вычисляться, так и задаваться пользователем.
Например, нам нужно вывести квадраты чисел от 1 до N, где значение переменной N вводится с клавиатуры пользователем.
Программа будет выглядеть следующим образом:
#include <iostream>
using namespace std;
main()
{
int i, N; // i – переменная цикла, N - максимальное число, у которого вычисляем квадрат
cin >> N; // ввод N с клавиатуры
for ( i = 1; i <= N; i ++) // цикл: для всех i от 1 до N - переменная i будет последовательно принимать значения от 1 до N
{
cout << "Kvadrat chisla "<<i<<" raven " <<i*i<<"\n"; // Вывод квадрата числа по определенному формату и переход на новую строку
}
}
При входе в цикл выполняется оператор i = 1, и затем переменная i с каждым шагом увеличивается на единицу (i ++). Цикл выполняется пока истинно условие i <= N. В теле цикла единственный оператор вывода печатает на экране само число и его квадрат по заданному формату.
Для возведения в квадрат или другую невысокую степень лучше использовать умножение.
Запустите программу и посмотрите результат ее работы при различных значениях переменной N.