gpt4 book ai didi

php - 嵌套的 for 循环提供不相关的输出

转载 作者:行者123 更新时间:2023-12-02 04:48:47 25 4
gpt4 key购买 nike

我想打印从 1user_input_limit 的值。但是每4个值之后。应该有 1 条断线,为此我使用下面的代码,但它不起作用。它在第二次交互中重复 +1 的值。

我的代码:-

if(is_numeric($_GET['num'])) {
$num = ceil($_GET['num']/4);

for($i=1;$i<=$num;$i++) {

echo '<div class="hello">';

for($j=$i;$j<=$i+3;$j++) {
echo $j.", ";
}

echo '</div>';

echo '<br />';
}
}

这适用于第一行,但在下一行,j 变成了 2 这不是我需要的,我希望它是 5。如下图

我需要什么:-用户输入 = 11

<div class='hello'>1,  2,  3,  4, </div> 
<div class='hello'>5, 6, 7, 8, </div>
<div class='hello'>9, 10, 11, </div>

我的内部 for 循环是错误的,我得到的输出如下:-

我得到了什么:-

1,  2,  3,  4, 
2, 3, 4, 5,
3, 4, 5, 6,

任何人都可以修复我的算法。

谢谢

最佳答案

不要使用内循环。

if(is_numeric($_GET['num'])) {
for($i=1;$i<=$_GET['num'];$i++) {
if ($i % 4 == 1) {
echo '<div class="hello">';
}
echo $i.", ";
if ($i % 4 == 0 || $i == $_GET['num']) {
echo '</div>';
}
}
}

编辑:

如果您想知道是否可以使用嵌套循环,这里有一个可能的解决方案:

if(is_numeric($_GET['num'])) {
for($i=0;$i<ceil($_GET['num']/4);$i++) {
echo '<div class="hello">';
for($j=$i*4+1;$j<=$i*4+4 && $j <= $_GET['num'];$j++) {
echo $j.", ";
}
echo '</div>';
}
}

如您所见,它很丑 :)。

关于php - 嵌套的 for 循环提供不相关的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com