Все программы с циклом 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.

Task
Запустите программу на выполнение, посмотрите результат ее работы при различных значениях переменной N
Проанализируйте выходные данные в окне результата проверки программы

Обратите внимание, что при N=0 (тест № 4) программа ничего не выводит, потому что условие i<=N при первом выполнении цикла сразу ложно (1<=0 - ложное условие), поэтому тело цикла не выполняется ни разу!
C++
1
#include <iostream>    
2
using namespace std;   
3
main() {    
4
 int i, N;     
5
cin >> N;     
6
 for ( i = 1; i <= N; i ++)     
7
 {    
8
  cout<<"Kvadrat chisla "<< i <<" raven " << i*i << "\n";      
9
 }    
10
}    
Your last submission is saved in the editor window.
     

Results:

All results: