#include<stdio.h>
#include<math.h>
int a[500000];
void isPrime()
{
a[0]=1,a[1]=1;
int i,j;
for(i=2;i<=500000;i++)
{
a[i]=0;
}
for(i=2;i<=sqrt(500000);i++)
{
if(a[i]==0)
for(j=2;i*j<=500000;j++)
a[i*j]=1;
}
}
int main()
{
isPrime();
int i,m,n,c,temp;
while(scanf("%d%d",&m,&n)!=EOF)
{
if(m>n)
{
temp=m;
m=n;
n=temp;
}
c=0;
for(i=m;i<=n;i++)
{
if(a[i]==0)
c++;
}
printf("%d\n",c);
}
return 0;
}
#include<math.h>
int a[500000];
void isPrime()
{
a[0]=1,a[1]=1;
int i,j;
for(i=2;i<=500000;i++)
{
a[i]=0;
}
for(i=2;i<=sqrt(500000);i++)
{
if(a[i]==0)
for(j=2;i*j<=500000;j++)
a[i*j]=1;
}
}
int main()
{
isPrime();
int i,m,n,c,temp;
while(scanf("%d%d",&m,&n)!=EOF)
{
if(m>n)
{
temp=m;
m=n;
n=temp;
}
c=0;
for(i=m;i<=n;i++)
{
if(a[i]==0)
c++;
}
printf("%d\n",c);
}
return 0;
}