0

在一个表单上,我使用 PHP 显示从 1 到输入数字的每个数字。例如,如果我在表单上输入 10,它会显示 1 2 3 4 5 6 7 8 9 10。现在,我希望它能够通过计数到 0 (-10 -9 -8 -7) 来处理负数-6 -5 -4 -3 -2 -1 0) 并将结果中的每个偶数加粗,例如 2 4 6 8 10 等)。我已经详尽地搜索了答案,但没有任何运气。你们中的任何人会如何建议这样做?我的第一部分代码如下所示。先感谢您。

<?php
$num = $_POST['num'];
$limit = $_POST['num'];

echo "<pre>";   
do {
echo ($counter).'<br>';
$counter++;
} while ($counter <= $limit);
echo "<pre>";
?>
4

1 回答 1

2

你可以这样做

<?php
$num = $_POST['num'];
$limit = $_POST['num'];

echo "<pre>";   
do {
if( $counter % 2 == 0 )
{
    echo "<strong>" . $counter . "</strong><br />";
}
else
{
    echo ($counter).'<br>';
}
$counter++;
} while ($counter <= $limit);
echo "<pre>";
?>

解决方案 1
好的,关于 %. 这是一个模数。如果您将其除以 mod 编号,它会返回剩余的数字。例如

0 % 2 = 0
1 % 2 = 1
2 % 2 = 0
3 % 2 = 1 this because 3 / 2 = 1 and a bit,
          you can't divide the last 1 completely by 2. So remain 1
4 % 2 = 0

解决方案 2
就像美眉说的,你可以使用$counter & 1. 这是做什么的?

如果您按位查看数字。你想与它机智1。

Bitwise number 2 = 0010 AND it with 0001 and your return will be 0000 (zero).
Bitwise number 3 = 0011 AND it with 0001 and your result will be 0001 (one).

如果您接受这种情况并且只检查最后一位,您可以查看它是否是偶数。有关按位运算的更多信息。

于 2013-01-29T18:26:35.777 回答