
用php写一个100因内的质数求和的程序
2也是质数啊,我运行的结果是:100以内质数总和为:1058100以内质数为:3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,6...
2也是质数啊,我运行的结果是:
100以内质数总和为:1058
100以内质数为:3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97
这个程序里面怎么没有包含到2哪 展开
100以内质数总和为:1058
100以内质数为:3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97
这个程序里面怎么没有包含到2哪 展开
展开全部
换一种统计方法吧:
这个应该可以的.
<?php
$k=0;
for($i=1;$i<100;$i++)
{
$count=0;
for($j=1;$j<$i;$j++)
{
if($i%$j==0)
{
$count++;
}
}
//在小于自身的书中,只可以被1整除,统计为1
if($count==1){
$arr[]=$i;
$k+=$i;
}
}
echo '100以内质数总和为:'.$k.'<br />';
echo '100以内质数为:'.implode(',',$arr);
?>
这个应该可以的.
<?php
$k=0;
for($i=1;$i<100;$i++)
{
$count=0;
for($j=1;$j<$i;$j++)
{
if($i%$j==0)
{
$count++;
}
}
//在小于自身的书中,只可以被1整除,统计为1
if($count==1){
$arr[]=$i;
$k+=$i;
}
}
echo '100以内质数总和为:'.$k.'<br />';
echo '100以内质数为:'.implode(',',$arr);
?>
展开全部
<?php
function esprime($limit) {
//=== Build data string with even numbers excluded.
$i = str_repeat('01',ceil($limit/2));
//=== Exclude odd non-primes
$sqrtlimit = sqrt($limit);
$n = 3;
while($n < $sqrtlimit) {
if ($i[$n]) {
$k = $n * $n;
$i[$k] = 0;
while($k<=$limit) {
$k += $n;
$i[$k] = 0; } }
$n += 2; }
//=== Return two as prime.
if($limit>=2) $primes[0] = 2;
//=== Return odd primes.
$n = 3;
while($n<$limit) {
if($i[$n]) $primes[] = $n;
$n += 2; }
return $primes;
}
$prime = esprime( 100 );
print_r( $prime );
echo array_sum( $prime );
参考的别人的质数函数
function esprime($limit) {
//=== Build data string with even numbers excluded.
$i = str_repeat('01',ceil($limit/2));
//=== Exclude odd non-primes
$sqrtlimit = sqrt($limit);
$n = 3;
while($n < $sqrtlimit) {
if ($i[$n]) {
$k = $n * $n;
$i[$k] = 0;
while($k<=$limit) {
$k += $n;
$i[$k] = 0; } }
$n += 2; }
//=== Return two as prime.
if($limit>=2) $primes[0] = 2;
//=== Return odd primes.
$n = 3;
while($n<$limit) {
if($i[$n]) $primes[] = $n;
$n += 2; }
return $primes;
}
$prime = esprime( 100 );
print_r( $prime );
echo array_sum( $prime );
参考的别人的质数函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询