素数求积

来源:互联网 发布:在线seo外链工具软件 编辑:程序博客网 时间:2024/05/29 16:13

小明求素数积

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述

小明最近遇到了一个素数题,是给你一个正整数N(2=<N<=1000)让你求出2~N的所有素数乘积的后六位。

 

输入
第一行输入一个正整数T(T<=20)表示有T组数据
每组数据占一行,输入一个正整数N(2=<N<=1000)
输出
每组数据输出占一行,输出2~N素数乘积的后六位
样例输入
33643
样例输出
630

670030

答案:

#include<stdio.h>
#include<math.h>
int sushu(int n)
{
    int i;
    for(i=2; i<=sqrt(n); i++)
    {
        if(n%i==0)
            return 0;
    }
    return 1;
}
int main()
{
    int t,n,i;
    scanf("%d",&t);
    while(t--)
    {
        int sum=1;
        scanf("%d",&n);
        for(i=2; i<=n; i++)
        {
            if(sushu(i)==1)
            {
                sum=sum*i%1000000;
            }


        }
        printf("%d\n",sum);
    }


}

0 0
原创粉丝点击