Печать шаблона без вложенного цикла в PHP


Вывод в мой код должен быть:

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

В настоящее время я использую этот код с вложенным циклом for для получения результата.

for($lineNumber=1;$lineNumber<=5;$lineNumber++) {
    for($starCount=1;$starCount<=$lineNumber;$starCount++)         {
            echo("*");
    }
        echo("<br />");
}

Мне нужно иметь возможность получить тот же результат без вложенного цикла for, и я в тупике. Единственное, что я хочу использовать, - это один цикл for. Ничего больше. Никаких "если", переключателей или других петель.

Спасибо!

Author: PsiX, 2015-09-15

2 answers

$str = '';
for($lineNumber=1;$lineNumber<=5;$lineNumber++) {
    $str = $str . '*';
    echo $str;
    echo("<br />");
}

Использование этого строкового аккумулятора устраняет необходимость во втором цикле.

 5
Author: CollinD, 2015-09-15 15:35:04

Используйте это:

for($lineNumber=1;$lineNumber<=5;$lineNumber++) {
    echo str_repeat("*",$lineNumber);
    echo("<br />");
}
 2
Author: TechJS, 2015-09-15 15:40:42