文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>高级6: 打印2 - 200 之间的所有素数

高级6: 打印2 - 200 之间的所有素数

时间:2008-04-29  来源:starB6

#!/usr/bin/perl -w # 基本思路: 从2开始,把每个2的倍数去掉,2  之后是3,5,7。。。。 依次类推 use strict; my $factor_number;        #使用这个参数来确定要循环的次数,
my $list=" ";             #把2..200的数转成按空格分的串存放
my $cur_prime;           #当前素数
my @restlt;              #存放最后结果
my $temp;                # 在替换合数时用的中间变量
my $t;                  # 一列列的打印数组用到的变量
foreach( 2..200)

  $list=$list." ".$_;                          # 成串
}
until ($list !~ /^\s+([0-9]+)\s+/)             #直到最后  
{
if ( $list =~ /^\s*([0-9]+)\s+/ )             # 取到队列的第一个数
{
   push @restlt ,$1;                          #存到结果里
  $cur_prime=$1;
}
$factor_number = int(200 / $cur_prime)  ;  # 能有多少个
for (my $i=1; $i<=$factor_number;$i++)
{
  my $temp = $cur_prime*$i;
 $list =~ s/\s+$temp\s+/ / ;
}
}
#print "the prime are : \n @restlt\n";
my $count = @restlt;
print "\t\t THERE ARE $count prime numbers BETWEEN 2 TO 200\n";
print "Print the prime numbers in lines :\n";
foreach $t(@restlt)
{
   print "$t\n";
}

 
相关阅读 更多 +
排行榜 更多 +
别惹神枪手安卓版

别惹神枪手安卓版

冒险解谜 下载
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载