这是代码
<?php
echo "<table border="0">";
for ($d = 1; $d <= $times;$d++ )
{
echo "<tr><td>";
echo rand(1,6), "n";
echo "</td></tr>";
}
echo "</table>"; ?>
我正在尝试获得最大,最小和 rand(1,6), "n";
的总和但是我无法弄清楚。这正在杀死我。
$rands = array(); // rand() storage
for($d = 1; $d <= $times; $d++){
$rands[$d] = rand(1, 6); // store rands
}
var_dump($min = min($rands)); // min() of rands
var_dump($min = max($rands)); // max() of rands
^请参阅示例代码。
( PS :我使用[$d]
,因为他具有1个基于1的增量,并且可能需要进一步的逻辑。这种方式,兰德键匹配他的$ d,可以在以后轻松访问。)
您也需要在数组中收集随机数:
echo "<table border="0">";
$rands = array();
#################
for ($d = 1; $d <= $times; $d++)
{
echo "<tr><td>";
echo $rands[] = rand(1,6), "n";
###########
echo "</td></tr>";
}
echo "</table>"; ?>
之后,您可以使用max
,min
和array_sum
(所有这些链接都带有不错的示例)。
由于您的代码已经显示,您应该开始在执行数据处理的代码和执行HTML输出的代码之间有所不同:
// handle the data
$randomNumbers = array();
foreach (range(1, $times) as $d)
{
$randomNumbers[$d] = rand(1,6);
}
// output the data
echo '<table border="0">';
foreach ($randomNumbers as $number) {
printf("<tr><td>%d</tr></td>", $number);
}
echo "</table>";
<?php
$min = 10;
$max = -1;
$sum = 0;
for ($d = 1; $d <= $times; $d++) {
$n = rand(1, 6);
if ($n < $min) $min = $n;
if ($n > $max) $max = $n;
$sum += $n;
}
echo $min . ' ' . $max . ' ' . $sum . '<br/>';
?>
$sum=0;
for ($d = 1; $d <= $times;$d++ ) {
echo "<tr><td>";
$r=rand(1,6);
$sum +=$r;
echo "$r, n";
echo "</td></tr>";
if ($d==1) { $min=$r; $max=$r; }
if ($r>$max) $max=$r;
if ($r<$min) $min=$r;
}
// do something with $min, $max and $sum;
<?php
$total = 0;
echo "<table border="0">";
for ($d = 1; $d <= $times;$d++ )
{
$rand = rand(1,6);
$total += $rand;
$array[] = $rand;
echo "<tr><td>";
echo $rand, "n";
echo "</td></tr>";
}
echo "</table>"; ?>
echo $total;
echo min($array);
echo max($array);