php - 如何以这种并排模式排列数字?

标签 php loops numbers

我正在尝试用 PHP 制作这个模式:

1  2  3  4
8  7  6  5
9 10 11 12

我尝试过这个,但没有成功:

$num = 0;
for ($i=0; $i<=2; $i++) {  
    for ($j=1; $j<=5; $j++) {  
        $num = $j - $i+$num;
        echo $num.""; 
        $num--;
    }  
    echo "</br>";  
}

有人可以帮我吗?

提前致谢...

最佳答案

这是我能够使用两个循环编写的最简单、最快的代码。使用三个循环会更容易,并且有多种方法可以实现这一点,但据我所知,这是最简单的一种。

<?php

$num = 1;
$change = true;
$cols = 5;
$rows = 5;

for ($i = 0; $i < $rows; $i++) {
    if (!$change) {
        $num += ($cols - 1);
    }

    for ($j = 0; $j < $cols; $j++) {
        echo $num . " ";
        if (!$change) {
            $num--;
        } else {
            $num++;
        }
    }

    if (!$change) {
        $num += ($cols + 1);
    }

    $change = !$change;
    echo "<br>";
}

注意:您必须在 $cols 变量中定义列数。它适用于任何情况。

关于php - 如何以这种并排模式排列数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54652649/

相关文章:

java - 在 Java 中对模式使用循环的不同变体

javascript - 网站的 id 传递替代方案

javascript - jQuery - 通过输入或 td 选择复选框时停止传播

php - 具有 500,000 条记录的慢速 MYSQL 查询

javascript - 如何要求用户输入并反转该输入

python - 循环直到特定的用户输入

PHP - MYSQL 不插入多行

Php 循环和写入 MySql Db 的问题

javascript - 计算div在div中的位置

numbers - "Nearly divisible"