Whether a number is Harshad number (niven) or not in C++
In this tutorial, we are going to learn how to check if a number is a Harshad number (Niven number ) or not in C++ with a simple and easy program.
Harshad or Niven number in C++
Any decimal number in which sum of its digits can divide the given number is called Harshad or Niven number.
For eg. 18= 1+8=9; 9 divides 18. Hence, 18 is a Harshad number. All single-digit number is Harshad.
Few mode harshad numbers: 1,2,3,4,5,6,7,8,9,10,12,18,20,…….
Approach to code:
- break the number into digits using mod operation.
- add the digits until reaching its unit place.
- check if the sum of digits divides the given number and leaves remainder 0.
- print “Yes” if we get our desired output else “No”
Check if a number is Harshad or Not in C++
//To check if the number is harshad(niven) or not main() { int n,m,a; //initializing the variables int sum=0; cin>>n; //enter the number m=n; // storing value of n while(n!=0) { a=n%10; //spliting in digits n=n/10; sum=sum+a; //getting sum of digits } if((m%sum)==0) //checking condition { cout<<"Yes the number is niven"; } else { cout<<"No number is not niven"; } } // end of main
Input 1: 18 Output: Yes the number is niven Input 2 : 15 Output: No number is not niven
For any doubts please comment below we will try to reply and clear it soon. Thanks!
Recommended:
Decimal to Octal conversion in C++
reverse pattern of digits using C++
Print all the Repeated Numbers with Frequency in an Array in C++
Leave a Reply