Smith Number PDF
Smith Number PDF
import java.util.*;
class Smith
{
static int prime(int a)
{
int c=0;
for(int i=2;i<a;i++)
{
if(a%i==0)
{
c++;
}
}
if(c==0)
return 1;
else
return 0;
}
static int sum(int a)
{
int s=0;
while(a>0)
{
int d=a%10;
s=s+d;
a=a/10;
}
return s;
}
public static void main()
{
Scanner sc=new Scanner(System.in);
System.out.println("Enter starting index and ending index");
int start=sc.nextInt();
int end=sc.nextInt();
if(start<=end)
{
System.out.println("all smith numbers in range "+start+" to "+end);
for(int a=start;a<=end;a++)
{
int n=a;
int s1=sum(n);
int s2=0;
int i=2;
while(n>1)
{
int k=prime(i);
if(k==1)
{
while(n%i==0)
{
s2=s2+sum(i);
n=n/i;
}
}
i++;
}
if(s1==s2)
System.out.println(a);
}
}
else
System.out.println("Wrong range");
}
}