在PHP中使用for循环的和数

时间:2016-06-30 10:39:41

标签: php

我想在PHP中使用for循环对数字求和。

像:的 '1+2+3+4+5+6+7+8+9+10=?'

这将使用

完成
<?php

         $start = 1;
         $end = 10;

         $sum = 0;
         for ($i = $start; $i <= $end; $i++) {
                     $sum += $i;
          }

          echo "Sum from " . $start . " to " . $end . " = " . $sum; 
?>

输出为:-Sum从1到10 = 55。

但我想这样输出:

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

我怎样才能做到这一点?

9 个答案:

答案 0 :(得分:8)

简化版:

$numbers = range(1, 10);
echo implode('+', $numbers) . '=' . array_sum($numbers);

答案 1 :(得分:3)

你需要一个字符串变量来保存每个值,如下所示:

$start = 1;
$end = 10;

$text = ''; // added
$sum = 0;

for($i = $start; $i <= $end; $i++){
    $text .= $i==$start ? $i : '+' . $i;  // added
    $sum += $i;
}

echo $text . ' = ' . $sum;

输出:

  

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

答案 2 :(得分:2)

     $start = 1;
     $end = 10;
     $string = '';
     $sum = 0;
     for ($i = $start; $i <= $end; $i++) {
                 $sum += $i;
                 $string .= $i.'+';
      }
      $string = rtrim($string,'+');
      echo $string." = " . $sum; 

答案 3 :(得分:2)

<?php

     $start = 1;
     $end = 10;

     $sum = 0;
     for ($i = $start; $i <= $end; $i++) {
                 $sum += $i;
      }

      echo implode('+', range($start, $end)). '=' . $sum;

答案 4 :(得分:2)

<?php

     $start = 1;
     $end = 10;
     $sum = 0;
     for ($i = $start; $i <= $end; $i++) {
                 $sum += $i;
                 if($i != 10)
                 {
                     echo $i.'+';
                 }
                 else
                 {
                    echo $i;
                  }
     }
      echo '='.$sum; 

?>

输出将是:

  

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

答案 5 :(得分:1)

试试这个:

$start = 1;
        $end = 10;

        $sum = 0;
        for ($i = $start; $i <= $end; $i++) {
            $sum += $i;
            if ($i != $end) {
                echo $i."+";
            } else {
                echo $i."=";
            }
        }

        echo $sum;

输出:

  

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

答案 6 :(得分:1)

然后你需要连接一个字符串,而不是和数字。

$str = array();
for ($i = $start; $i <= $end; $i++) {
    $str[] = $i;
}
$str = implode("+",$str)."=".$sum;

答案 7 :(得分:1)

你需要在for循环中制作这样的字符串(1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10),要制作这样的字符串,我们使用{{1} }运算符用于连接PHP中的字符串

像这样更新你的for循环,

.

$ result将有 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 作为最终结果。

答案 8 :(得分:1)

使用以下代码: -

$start = 1;
$end = 10;
$sum = 0;
$str = ''; // declare string variable
for ($i = $start; $i <= $end; $i++) {
     $sum += $i;
     $str .= $i==$start ? "$i":"+$i";
}
echo "$str = $sum"; 

<强>输出: -

1+2+3+4+5+6+7+8+9+10 = 55