3 6 8 10
5 1 7 1 11 1
代码1:
#include<stdio.h>
#include<math.h>
int fun(int x)
{
int i;
if(x==1||x==0)
return 0;
for(i=2;i<=sqrt(x);i++)
{
if(x%i==0)
{
return 0;
}
}
return 1;
}
int main(void)
{
int n;
scanf("%d",&n);
while(n--)
{
int m;
int flag,count;
scanf("%d",&m);
if(fun(m)!=1)
{
int t1=m,t2=m;
for(count=0;;count++)
{
if(fun(t1-count)==1)
{
flag=1;
break;
}
else if(fun(t2+count)==1)
{
flag=2;
break;
}
}
if(flag==1)
printf("%d %d\n",m-count,count);
if(flag==2)
printf("%d %d\n",m+count,count);
}
else
printf("%d %d\n",m,0);
}
return 0;
} #include<stdio.h>
#include<math.h>
int prime(int x)
{
int i,k=0;
for(i=2;i<=sqrt(x);i++)
{
if(x%i==0)
{
k=1;
break;
}
}
return k;
}
int main()
{
int i,a,b,N,n;
scanf("%d",&N);
while(N--)
{
scanf("%d",&n);
a=b=n;
while(prime(a))
a++;
while(prime(b))
b--;
if(n==1)
printf("2 1\n");
else if((a-n)>=(n-b))
printf("%d %d\n",b,n-b);
else
printf("%d %d\n",a,a-n);
}
return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文:http://blog.csdn.net/qq_16997551/article/details/47048209