我是相当新的PHP,我试图解决这个问题,我需要做一个for循环从范围(1,20)生成10个随机数,然后输出它们是奇数还是偶数.
我虽然坚持这一点.到目前为止,我在下面有这个,但我知道它错了.任何帮助或指导将不胜感激.
$rand120 = rand(1, 20);
for($rand120 = 10; $rand120 <= 20; $rand120++);
{
echo "$rand120"."<br/>";
}
if ($rand120 % 2 === 0) {
echo "$rand120 is even </br>";
} else {
echo "$rand120 is odd </br>";
}
Run Code Online (Sandbox Code Playgroud)
rand()只返回一个随机数,而不是一系列数字.这两个参数用于最小值和最大值.如果需要20个随机值,则需要在循环中使用它.
for ($i = 0; $i < 10; $i++) {
$value = rand(1, 20);
if ($value % 2 === 0) {
echo "$value is even </br>";
} else {
echo "$value is odd </br>";
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这并不能确保它们是独一无二的.如果需要,您需要将其添加到数组中,并在每次生成新数字时进行检查,如下所示.这将循环while直到数组中有10个元素,并且只有在数组中不存在时才添加新元素.
$array = array();
while (count($array) < 10)) {
$value = rand(1, 20);
if (!in_array($value, $array) {
$array[] = $value;
if ($value % 2 === 0) {
echo "$value is even </br>";
} else {
echo "$value is odd </br>";
}
}
}
Run Code Online (Sandbox Code Playgroud)