NYOJ 225 小明求素数积

 1 #include<stdio.h>
 2 #include<math.h>
 3 #include<stdlib.h>
 4 int is_prime(int x)
 5 {
 6     int i;
 7     if(x==1)  return 0;
 8     for(i=2;i<=sqrt(x);i++)
 9     if(x%i==0)  return 0;
10     return 1;
11 }
12 int main()
13 {
14     int t,n,i,sum;
15     scanf("%d",&t);
16     while(t--)
17     {
18         scanf("%d",&n);
19         for(i=2,sum=1;i<=n;i++)
20           if(is_prime(i))
21           {
22            sum*=i;
23            sum%=1000000;
24           }
25           printf("%d\n",sum);//如果在这sum%1000000,即全部成完后再取余就会有益处可能,为此需要没乘一次就取余一次
26            
27     }
28     system("pause");
29     return 0;
30 }
31         
32         

posted on 2012-08-07 20:28  mycapple  阅读(296)  评论(0编辑  收藏  举报

导航