Twin Prime



Problem to find the pairs in prime number in given range which difference is equal to 2.



Example-1:


Input    : n = 20
Output   : 3 5
           5 7
           11 13
           17 19 


Example-2:


Input    : n = 15
Output   : 3 5
           5 7
           11 13







Solution




public class Main
{
    public static void main(String [] args)
    {   
        int limit = 20;

        for(int i=3;i<=limit-2;i=i+2) 
        {
            if(isTwinPrime(i,i+2))
            {
                System.out.println(i+"   "+(i+2));
            }
        }
    }
    public static boolean isTwinPrime(int n,int m)
    {
        for(int i=2;i<m;i++) 
        {
              if((i!=n && n%i==0)||m%i==0)
              {
                  return false;
              }
        }

        return true;
    }
}
n = 20

l = []

for i in range(3,n):

    for j in range(2,i):

        if(i%j==0):

            break

    else:

        l.append(i)

for x in range(1,len(l)):

    if(l[x]-l[x-1]==2):

        print(l[x-1],l[x])



Output



3   5
5   7
11  13
17  19