php – 打印图案以显示最多5行和5列的数字,如5 4 3 2 1和下一行4
发布时间:2020-12-13 22:11:07 所属栏目:PHP教程 来源:网络整理
导读:这是一个正方形图案,每行有5列,有5行,图案如下所示: 5 4 3 2 1 4 3 2 1 5 3 2 1 5 4 2 1 5 4 3 1 5 4 3 2 我的代码如下所示,以获得模式,但当计数器变为1并显示在相应的列值时,我无法重置每个模式中的值. 任何人都可以指导我缺乏逻辑吗? ?php $n=5; $count=
这是一个正方形图案,每行有5列,有5行,图案如下所示:
5 4 3 2 1 4 3 2 1 5 3 2 1 5 4 2 1 5 4 3 1 5 4 3 2 我的代码如下所示,以获得模式,但当计数器变为1并显示在相应的列值时,我无法重置每个模式中的值. 任何人都可以指导我缺乏逻辑吗? <?php $n=5; $count=5; for($i=5;$i>=1;$i--){ for($j=$count;$j>=1;$j--) { if($count>=1) echo $j." "; } $count--; echo "n"; } ?> 解决方法
我认为这是一个学习练习,所以必须用for循环来完成.
<?php $n=5; for($i=$n; $i>=1; $i--) { for($j=$n; $j>=1; $j--) { echo ($i + $j - 1) % $n + 1; echo ' '; // cosmetics :) } echo "n"; } ?> %是模运算符. 6%5 =其余从6除以5 = 1. 例子:1%5 = 1; 5%5 = 0; 12%5 = 2. 这很容易超过模运算(http://en.wikipedia.org/wiki/Modular_arithmetic).每个新行都不是简单的加法操作,而是在5-mod数字集中(对于从较小数字开始的每一行).我认为这是解决这个问题的最佳和单线解决方案.此外,操作简单,并且不耗时. 最好的祝福! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |