所以我有代码来检查输入值的Prime数字。我的问题是,我如何转换代码,以便表格可以在10个集合中动态,最大值为100?这样输入只能增加10,最大值你可以输入100?
我现在的代码设置为10列4行,所以有没有办法让这个改变(动态我想?)改变输入增量为10?
这是我的代码:
<form method="post" action="">
<table border="2" width="1180px">
<thead>
<center>
Number Chart</center>
</thead>
<?php
error_reporting(0);
function isPrime($n)
{
if ($n == 1) return false;
if ($n == 2) return true;
if ($n % 2 == 0)
{
return false;
}
$i = 2;
for ($i = 2; $i < $n; $i++)
{
if ($n % $i == 0)
{
return false;
}
}
return true;
}
if (isset($_POST['value']) && $_POST['value'] != 0)
{
/* @var $start type */
$start = $_POST['value'];
}
else
{
$start = 1;
}
$n_cols = 10;
$n_rows = 5;
for ($i = 0; $i < $n_rows; $i++) //
{
$col = '';
for ($j = 0; $j < $n_cols; $j++)
{
$number = ($start - $i - ($j * $n_cols));
if (isPrime($number) == true)
{
//if prime color it red
$col.= '<th style="color:red">' . ($start - $j - ($i * $n_cols)) .
'</th>';
}
else
{
$col.= '<th>' . ($start - $j - ($i * $n_cols)) . '</th>';
}
}
$out.= '<tr>' . $col . $row . '</tr>';
}
echo $out;
?>
<tr>
<thead colspan=10>
<center>
<label for="input">Enter Limit:</label>
<input type="text" name="value" style="width: 60px">
<input type="submit" name="submit" value="Submit">
</center>
</thead>
</tr>
</table>
</form>
答案 0 :(得分:1)
if (($_POST['value'] % 10) != 0 || $_POST['value'] >100 ){
echo 'you must enter a valid value';
}else{
//all the code you want to run only if the number posted is valid
}
%是模数,有关详细信息,请参阅http://php.net/manual/en/language.operators.arithmetic.php