好的,所以我在尝试编写 5x3 星形图案时遇到了一个独特的问题。我可以执行 for 循环来获得 5x3,这很容易。但是我需要不同于正方形的东西。
我们最多可以有 15 颗星。所以打印出一个完整的块看起来像这样:
* * *
* * *
* * *
* * *
* * *
但是我们可以传入一个参数来表示我们想要的星数。所以让我们传入 11 而不是 15。我们应该得到:
* * *
* * *
* * *
* *
但是,以 11 作为我的参数,输出是这样的:
*
* *
* *
*
它用不正确的星数打印出正确的行数。我知道这是为什么,这是因为我的代码中的模数。我还尝试了一种不同的方法,它打印出的行比需要的少。我被困住了,不知道从这里去哪里。
这是我的代码:
<?php
$num = 11;
$rows = ceil($num/3);
$count - 0;
for($j = 0; $j < $rows; $j++){
echo '<div class="row-fluid"><ul class="thumbnails">';
for($i = $num%3; $i < 3; $i++){
echo '*';
$count++;
}
$num-=$count;
echo '</ul></div>';
}
?>