Q:

Вывод на экран прямоугольного треугольника при помощи цикла while

#include <iostream>

using std::cout;
using std::cin;
using std::endl;

void main()
{
setlocale(LC_ALL, "Russian");    

int size, cont = 0, temp = 0;

cout << "Введите размер прямоугольного треугольника: "; cin >> size;

while (temp++ < size)                               
{

    while (cont < size)                         
    {
          if (cont < size) cout << '*'; else cout << ' ';

          cont++;   
    }

    cout << endl;
}

cout << endl;
}

Помогите пожалуйста с корректным выводом прямоугольного треугольника состоящего из символа '*', исключительно посредством while.
Почему в моей программе вложенный цикл while выполняется только при первой итерации основного цикла while, а в последующих игнорируется?

A:

Вероятно вы хотели добиться такого:
Введите размер прямоугольного треугольника: 5
*
**
***
****
*****

Тогда вы забыли по окончании каждой итерации внешнего цикла сбросить значение переменной cont. Подправил ваши циклы:
  while (temp++ < size)                         
  {
    while (cont++ < temp)
    {
      cout << '*';
    }
    cont = 0;
    cout << endl;
  }

