我有代码:
<?php
$number =9;
$number2 = $number / 2;
for ($b=0; $b<=$number2; $b++){
for ($i=$number; $i>=1; $i--){
echo $i;
}
echo "<br/>";
for ($a=1; $a<=$number; $a++)
{
echo $a;
}
echo "<br/>";
}
?>
我想要这样的结果。
987654321
123456789
987654321
123456789
987654321
123456789
987654321
123456789
987654321
为什么如果我把奇数放在9,为什么总是结果10循环?
答案 0 :(得分:3)
循环中有两个循环,因此您将始终获得偶数行。
您实际上并不需要该结构,请参阅:
$number=9;
$k=0;
$sum=1;
for($i=1; $i<=$number; $i++) {
for($j=1; $j<=$number; $j++) {
$k+=$sum;
echo $k;
}
echo '<br>';
//Sum once again so in the next iteration $k is 0 or 10
$k+=$sum;
//Invert the sign of $sum so in the next iteration it substracts, and then adds, and so on
$sum*=-1;
}
另请注意,从0
到$number
包含(更低或相等的比较),您将获得更多一次迭代(从0到9,有10个整数)。
答案 1 :(得分:0)
解决这个代码,加布里埃尔。
$number=9;
$k=0;
$sum=1;
for($i=1; $i<=$number; $i++) {
for($j=1; $j<=$number; $j++) {
$k+=$sum;
echo $k;
}
echo '<br>';
//Sum once again so in the next iteration $k is 0 or 10
$k+=$sum;
//Invert the sign of $sum so in the next iteration it substracts, and then adds, and so on
$sum*=-1;
}