考试Qn:将do while循环转换为for循环(PHP)
最近,我的考试结束了。我上次的考试是基于PHP的。我考试得到了以下问题: “在不影响输出的情况下,使用for循环转换以下脚本:-”考试Qn:将do while循环转换为for循环(PHP),php,Php,最近,我的考试结束了。我上次的考试是基于PHP的。我考试得到了以下问题: “在不影响输出的情况下,使用for循环转换以下脚本:-” 先生,我的电脑出站了,请帮帮我,我真的很困惑。好吧,如果我理解得很好,你必须使用“for”循环,而不是“do…while”,但打印文本不得更改 尝试: $count=10; $x=0; $firstRun=true; 对于(;$count>1 | |$firstRun;){ $firstRun=false; 回声($count.“”); $count-=2; $
先生,我的电脑出站了,请帮帮我,我真的很困惑。好吧,如果我理解得很好,你必须使用“for”循环,而不是“do…while”,但打印文本不得更改 尝试:
$count=10;
$x=0;
$firstRun=true;
对于(;$count>1 | |$firstRun;){
$firstRun=false;
回声($count.“
”);
$count-=2;
$x=$x+$count;
}
echo(x美元);
顺便说一下,循环是不必要的,因为在第一个循环之后$count将大于1,所以while将变为false
编辑
- $firstRun避免无限期
- 循环中的$count
- 新要求的固定代码
- 删除了不必要的代码
我不知道你的老师是否想拥有你。。。但是do{}将只执行一次,因为$count从不小于1 教师代码的输出为:
10
八, 我认为代码中有一个错误,while应该是while($count>1),这会更有意义(因为要求循环只输出10 8是很奇怪的),并且会导致此输出:
10
8
6
4
2
二十 那么一个好的for()循环应该是:
$x = 0;
$count = 10;
for($i = $count; $i > 1; $i -= 2)
{
$count -= 2;
echo $i . "<br>";
$x += $count;
}
echo $x;
$x=0;
$count=10;
对于($i=$count;$i>1;$i-=2)
{
$count-=2;
回声$i.“
”;
$x+=$count;
}
echo$x;
将输出相同的值。
如果可以,请向老师询问,并对答案进行评论^^ahahah您的脚本输出
10
8
。这是正确的还是应该在10次迭代中减少2次?请更正或下拉问题bro..你是对的。代码中有错误。但是我真的想知道如何将do-while循环更改为for循环(而不是上面的代码)?这将导致无限循环。在第一次迭代中10<1 | 10==10
,在第二次迭代中8<1 | 8==8
。另外,不确定$i<1
应该做什么。我认为OP的PHP是错误的,他们实际上希望它输出10,8,6,4,2。如果这是真的,那么您的代码可以简单地for($i=$count;$i<$count;$i-=2){…
。对了,修复了(现在也测试了xD)对不起,代码中有错误。但是我想知道如何将do while循环更改为for循环?(不适用于上面的代码)@Joe我刚刚更改了$count = 10;
$x = 0;
$firstRun = true;
for(; $count > 1 || $firstRun;) {
$firstRun = false;
echo ($count . "<BR>");
$count -= 2;
$x = $x + $count;
}
echo ($x);
$x = 0;
$count = 10;
for($i = $count; $i > 1; $i -= 2)
{
$count -= 2;
echo $i . "<br>";
$x += $count;
}
echo $x;