Проблема с факториалом - PullRequest
0 голосов
/ 25 апреля 2020

Я хочу увидеть факторный вывод от 1 до 10. Но для этого я должен поставить код печати 'echo' в l oop. На внешней стороне l oop это показывает только факториал 10. вот мой код Помогите мне узнать, почему «эхо» не работает должным образом за пределами l oop. Заранее спасибо за помощь.

here is picture of coding

$factorial = 1;
for ($n = 1; $n <= 10; $n++) {
    $factorial *= $n;

    echo "$factorial \n";

}
echo PHP_EOL;

$factorial = 1;
for ($n = 1; $n <= 10; $n++) {
    $factorial *= $n;

}

echo "$factorial \n";

1 Ответ

0 голосов
/ 25 апреля 2020

Эхо во время цикла будет выводить каждое значение во время каждой итерации (это означает, что старые данные будут заменены новыми). Если вы откроете эхосигнал (ниже) l oop, он просто отобразит значение последней итерации. Чтобы преодолеть вашу текущую проблему, вам нужно будет записать все значения в массив, а затем распечатать их любым удобным для вас способом.

Ваш исходный код

$factorial = 1;
for ($n = 1; $n <= 10; $n++) {
  $factorial *= $n;
}
echo "$factorial \n";

Попробуйте использовать массив, подобный этому

<code>$captureData = [];
$factorial = 1;
for ($n = 1; $n <= 10; $n++) {
    $factorial *= $n;
    $captureData[] = $factorial;
}

echo '<pre>';
print_r($captureData);
echo '
';
...