не пойму как сделать задание с елочкой. паскаль

У меня не получается понять задание:

Пользователь вводит число N>0. Программа печатает N строк, содержащих символ "*", расположенные таким образом, чтобы результат был похож на на елочку:

*
**
***
*****
********

Просто решил подучить delphi, но для начала взял паскальabc.net, чтобы основы подучить. Но вот попалось задание, в котором мне не понятно именно как должно отображаться. Прошу подсказать как это можно написать, можно код даже на c#. Просто не могу понять как увеличивается в строке 4 на два символа *, а в следующей еще больше.

Вот код который у меня:

var N:=readinteger('N=');
begin
  for var i:=1 to N do 
    begin
    for var j:=1 to i do
    begin
      write('*');
      end;
      writeln();
    end;
end.

Вывод моего кода:

*
**
***
****
*****

Ответы (1 шт):

Автор решения: MBo
var len := 1;
for var i:=1 to N do 
begin
  for var j:=1 to len do 
    write('*');
  writeln();
  //А может, StringOfChar есть в этом pascalabc.net?

  if i = 1 then
    len := len + 1
  else 
    len:= len + i - 1;
end;
→ Ссылка