当计数器为偶数但不为零时回显

发布于 2024-10-29 07:20:55 字数 127 浏览 1 评论 0原文

for ($i=0; $i<=25; $i++) {
if ($i % 2) { is odd } else { is even }
}

我必须从 0 开始,但我不希望它看起来均匀。

for ($i=0; $i<=25; $i++) {
if ($i % 2) { is odd } else { is even }
}

I have to start from 0 but I dont want it to appear as even.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

千里故人稀 2024-11-05 07:20:55
for ($i=0; $i<=25; $i++) 
{
    if($i == 0)
    {
        continue;
    }
    if ($i % 2) 
    { 
         //is odd 
    } 
    else 
    { 
         //is even 
    }

}

就是这么简单。继续将导致它跳过循环的此特定迭代的其余部分。您还可以在继续之前执行一些代码来处理 0,因为 0 既不是偶数也不是奇数。或者您可以将其作为 if/elseif/else 结构的第一部分。

或者代替 if($i % 2) 你可以做 if($i % 2 || $i == 0) 这将使它通过奇怪的代码进行处理而不是代码。

for ($i=0; $i<=25; $i++) 
{
    if($i == 0)
    {
        continue;
    }
    if ($i % 2) 
    { 
         //is odd 
    } 
    else 
    { 
         //is even 
    }

}

It's that simple. Continue will cause it to skip the rest of this particular iteration of the loop. You could also do some code to handle 0 before the continue, as 0 is neither even nor odd. Or you could make it the first part of the if/elseif/else structure.

Or instead of if($i % 2) you could do if($i % 2 || $i == 0) which would make it process through the odd code rather than even code.

岁月无声 2024-11-05 07:20:55

首先,你真的需要从 0 开始你的 for 循环吗?你可以通过执行 for ($i=1; $i<=25; $i++) 来轻松解决这个问题

。如果你确实需要从 0 开始,你实际上可以对这种特殊情况进行测试:



if ($i === 0 || $i % 2) { is odd } else { is even }

First of all, do you really need starting your for loop from 0? you can easyly work this around by doing for ($i=1; $i<=25; $i++)

If you really need to start from 0 you can actually put a test for that special case:



if ($i === 0 || $i % 2) { is odd } else { is even }

一刻暧昧 2024-11-05 07:20:55
for ($i=0; $i<=25; $i++) {
if (i==0) {
  echo 'zero';
  } elseif ($i % 2 ==0) { 
  echo 'is even'; 
 } else { 
  echo 'is odd'; 
 }
}

或者

 for ($i=0; $i<=25; $i++) {
    if ($i !=0){
      if ($i % 2 ==0 { 
        echo 'is even'; 
      } else { 
        echo 'is odd'; 
      }
    }
  }
for ($i=0; $i<=25; $i++) {
if (i==0) {
  echo 'zero';
  } elseif ($i % 2 ==0) { 
  echo 'is even'; 
 } else { 
  echo 'is odd'; 
 }
}

OR

 for ($i=0; $i<=25; $i++) {
    if ($i !=0){
      if ($i % 2 ==0 { 
        echo 'is even'; 
      } else { 
        echo 'is odd'; 
      }
    }
  }
前事休说 2024-11-05 07:20:55

就这么简单。

for ($i=0; $i<=25; $i++) {
    if($i) {
        if ($i % 2) { is odd } else { is even }
    }
    // Other code
}

或者如果你想将 0 算为奇数:

for ($i=0; $i<=25; $i++) {
    if (!$i || $i % 2) { is odd } else { is even }
    // Other code
}

It's as simple as this.

for ($i=0; $i<=25; $i++) {
    if($i) {
        if ($i % 2) { is odd } else { is even }
    }
    // Other code
}

Or if you want to count 0 as odd:

for ($i=0; $i<=25; $i++) {
    if (!$i || $i % 2) { is odd } else { is even }
    // Other code
}
御守 2024-11-05 07:20:55

for ($i=0; $i<=25; $i++) {
if ($i % 2 && $i != 0) { 是奇数 } else { 是偶数 }
}

for ($i=0; $i<=25; $i++) {
if ($i % 2 && $i != 0) { is odd } else { is even }
}

空城之時有危險 2024-11-05 07:20:55

如果您只想迭代偶数值,则可以对其进行排序:

for ($i=0; $i<=25; $i+=2) {
...
}

If you only want to iterate through the even values, this will sort it:

for ($i=0; $i<=25; $i+=2) {
...
}
等待圉鍢 2024-11-05 07:20:55

也许它不是最易读的,但它将是最有效的:

for ($i=0; $i<=25; $i++) {
    if ($i)
        if ($i & 1) { is odd } else { is even }
}

Maybe it's not the most readable but it will be the most efficient:

for ($i=0; $i<=25; $i++) {
    if ($i)
        if ($i & 1) { is odd } else { is even }
}
尽揽少女心 2024-11-05 07:20:55

不幸的是,我认为你需要额外的如果......

    for ($i=0; $i<=25; $i++) {
echo (($i>0)?(($i % 2 )? "odd":"even"):"whatever");
}

I think you need, unfortunately, an extra if...

    for ($i=0; $i<=25; $i++) {
echo (($i>0)?(($i % 2 )? "odd":"even"):"whatever");
}
○闲身 2024-11-05 07:20:55

为什么不在这个已经得到很好回答的帖子中添加 1 个答案:

for ($i=0; $i<=25; $i++)
{
    if($i === 0) continue;
    if ($i % 2) { is odd } else { is even }
}

如果添加 if($i === 0) continue; 它将跳过其余代码并进入下一次迭代。

Why not add 1 more answer to this already well answered post:

for ($i=0; $i<=25; $i++)
{
    if($i === 0) continue;
    if ($i % 2) { is odd } else { is even }
}

if you add if($i === 0) continue; it will skip the rest of the code and go to the next iteration.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文