Tuesday, November 2, 2010

Program for display smith number in java

import java.io.*;
class smith
{
public static int sumdigit(int n)
{
int i,c=0,s=0;
while(n>0)
{
c+=n%10;
n/=10;
}
return(c);
}
public static int isprime(int n)
{
int i,c=0;
for(i=1;i<=n;i++)
{
if(n%i == 0)
c++;
}
if(c == 2)
return(0);
else
return(1);
}
public static void main()throws IOException
{
BufferedReader br=new BufferedReader(
new InputStreamReader(System.in));
int n;
System.out.print("Enter number :-");
n=Integer.parseInt(br.readLine());
int i,j,tot=0,digi;
digi=sumdigit(n);
while(true)
{
j=1;
for(i=j;i<n;i++)
{
if(n%i == 0)
{
if(isprime(i) == 0)
{
if(i>9)
tot+=sumdigit(i);
else
tot+=i;
n/=i;
break;
}
}
}
if(i == n)
break;
}
if(isprime(n) == 0)
{
if(n>9)
tot+=sumdigit(n);
else
tot+=n;
}
if(digi == tot)
System.out.println("Smith Number....");
else
System.out.println("Not Smith Number....");
}
}












1 comment:

saloni said...

complicated 1......