素数

来源:互联网 发布:单片机和fpga的区别 编辑:程序博客网 时间:2024/05/17 23:42
#include<stdio.h>
#include<math.h>
int f1(int n)
{


    if(n!=1)
    {
        for(int i=2; i<=sqrt(n); i++)
            if(n%i==0)
                return 0;
        return 1;
    }
}
int f2(int n)
{
    int a,b,m,j;
    if(f1(n)==1)
        return n;
    for(m=n; f1(m)!=1; m--)
        a=m-1;
    for(j=n; f1(j)!=1; j++)
        b=j+1;
    //printf("a-->%d\nb-->%d\n",a,b);
    if((n-a)<(b-n))
        return a;
    else return b;
}
int main()
{
    int M;
    scanf("%d",&M);
    while(M--)
    {
        int n,A;
        scanf("%d",&n);
        if(n==1)
            printf("2 \n");
        else
        {
            A=f2(n);
            printf("%d",A);
            printf("\n");
        }
    }
    return 0;
}