packagecom.thealgorithms.maths;importjava.util.Scanner;publicclassHarshadNumber{publicstaticvoidmain(String[] args){Scanner sc =newScanner(System.in);System.out.print("Enter a number : ");long a = sc.nextLong();checkHarshadNumber(a);}publicstaticvoidcheckHarshadNumber(long a){long b = a;int sum =0;// this is just for showing the explanation else it's of no use you can ommit itint[] each =newint[Long.toString(a).length()];int c =0;while(b >0){
sum += b %10;
each[c]=(int)(b %10);
b /=10;
c++;}if(a % sum ==0){System.out.println(a +" is a Harshad Number");// For you better explanation how is that a Harshad NumberSystem.out.println("\nExplaination :");for(int i = each.length -1; i >=0; i--){System.out.print(each[i]+" ");if(i !=0){System.out.print("+ ");}}System.out.println("= "+ sum);System.out.println(sum +" × "+(a / sum)+" = "+ a);}else{System.out.println(a +" is not a Harshad Number");}}}