Добавьте все предыдущие числа в цикл for, чтобы получить текущий номер - PullRequest
0 голосов
/ 01 марта 2019

У меня есть это для цикла:

for($i = 1; $i <= 7; $i++) {

    echo $i . "<br>";

}

Что выводит:

1
2
3
4
5
6
7

Теперь я хочу добавить все предыдущие числа в каждом цикле.Таким образом, выходные данные должны быть:

1
2 // add all above to get this number
3 // add all above to get this number
6 // add all above to get this number
12 // add all above to get this number
24 // add all above to get this number
48 // add all above to get this number
96 // add all above to get this number
...etc

Первое и второе число не обязательно должны быть в цикле, которые могут быть определены вручную снаружи.

Чего я не хочу, так это для добавления значения $ i в каждом цикле, но для добавления всех предыдущих чисел в каждом цикле.

Я попытался суммировать, используя этот код:

$sum = 0;

for($i = 1; $i <= 5; $i++) {

    $sum = $sum + $i;
    echo $sum . "<br>";

}

Но я получаю этот вывод:

1
3
6
10
15
21
28

Как мне достичь желаемого результата?

Ответы [ 2 ]

0 голосов
/ 01 марта 2019

Попробуйте это

<?php
$results = [];
for ($i = 0; $i <= 7; $i++){
    $currentResult = 0;
    if ($i < 2){
        $currentResult = $i+1;
    }
    else{
        foreach($results as $currenNumber){
            $currentResult += $currenNumber;
        }
    }
    echo $currentResult . '<br>';
    $results[] = $currentResult;
}
?>
0 голосов
/ 01 марта 2019
<?php

$value = 0;

for($i = 1; $i <= 8; $i++) {
    if($value < 3){
        $value = $value + 1;
    } else{
        $value = $value * 2;
    }
    echo $value . '<br>';
}

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...