Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算while循环到数组的和_Php - Fatal编程技术网

Php 计算while循环到数组的和

Php 计算while循环到数组的和,php,Php,当数字6给出时,我需要计算到6:例如:1+2+3+4+5+6=21。我还需要把每一个的和加到一个数组中,比如:1+2=3,1+2+3=6,1+2+3+4=10 我已尝试打印while循环,该循环工作正常,但不适用于阵列: <?php $number = $_POST['number']; $i = 1; $cal = 0; $tussenBerekening = array(); while ($i <= $number) { echo $i;

当数字6给出时,我需要计算到6:例如:1+2+3+4+5+6=21。我还需要把每一个的和加到一个数组中,比如:1+2=3,1+2+3=6,1+2+3+4=10

我已尝试打印while循环,该循环工作正常,但不适用于阵列:

   <?php
  $number = $_POST['number'];
  $i = 1;
  $cal = 0;
  $tussenBerekening = array();

  while ($i <= $number) {
    echo $i;
    $cal = $cal + $i;
    array_push($tussenBerekening, $cal);
    if ($i != $number) {
      echo " + ";
    } else {
      echo " = " . $cal;
    }
    $i++;
  }
?>

这是我的新代码,打印出来了,但没有总数

<?php
  $number = $_POST['number'];
  $i = 2;
  $cal = 0;
  $sum = 1;
  $berekeningen = array();


  while ($i <= $number) {
    $sum .= "+" . $i;
    array_push($berekeningen, $sum);
    $i++;
  }

  print_r($berekeningen);

 ?>

这里有一个解决方案:

$i = 1;
$number = 6;
while ($i <= $number) {
    // generate array with values from 1 to $i
    $array = range(1, $i);
    // if there're more than 1 element in array - output sum
    if (count($array) > 1) {
             // 1+2+... part                // sum of elements of array
        echo implode('+', $array) . ' = ' . array_sum($array) . '<br />';
    }
    $i++;
}
$i=1;
$number=6;

虽然($我很好!这是一个非常特别的PHP解决方案。询问者在他的任务中将看起来像一个专业的老前辈:)