Front-end Tutorials

Front-end Tutorials

HTMLCSSSassJavaScriptReactJS
CMS Tutorials

CMS Tutorials

WordPress
Tutorials expand

Java Program to Check Harshad Number

Posted in Java Tutorial
Updated on Jan 11, 2024
By Mari Selvan
πŸ‘οΈ 38 - Views
⏳ 4 mins
πŸ’¬ 1 Comment
Java Program to Check Harshad Number

Photo Credit to CodeToFun

πŸ™‹ Introduction

In the realm of programming, a Harshad number (or Niven number) is a positive integer that is divisible by the sum of its digits. Checking for Harshad numbers involves finding the sum of the digits and determining if the original number is divisible by this sum.

In this tutorial, we will explore a Java program designed to check whether a given number is a Harshad number.

πŸ“„ Example

Let's delve into the Java code that accomplishes this task.

HarshadNumberChecker.java
Copied
Copy To Clipboard
import java.util.Scanner;

public class HarshadNumberChecker {
  // Function to check if a number is a Harshad number
  static boolean isHarshadNumber(int number) {
    int originalNumber = number;
    int sumOfDigits = 0;

    // Calculate the sum of digits
    while (number > 0) {
      sumOfDigits += number % 10;
      number /= 10;
    }

    // If the original number is divisible by the sum of digits, it is a Harshad number
    return (originalNumber % sumOfDigits == 0);
  }

  // Driver program
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    // Replace this value with the number you want to check
    System.out.print("Enter a number: ");
    int number = scanner.nextInt();

    // Call the function to check if the number is a Harshad number
    if (isHarshadNumber(number)) {
      System.out.println(number + " is a Harshad number.");
    } else {
      System.out.println(number + " is not a Harshad number.");
    }
  }
}

πŸ’» Testing the Program

To test the program with different numbers, replace the value of number with the desired number in the main method.

Output
Enter a number:  18
18 is a Harshad number.

🧠 How the Program Works

  1. The program defines a class HarshadNumberChecker containing a static method isHarshadNumber that takes an integer number as input and returns true if the number is a Harshad number, and false otherwise.
  2. Inside the main method, the program reads an integer from the user to check if it is a Harshad number.
  3. The program calls the isHarshadNumber method and prints the result.

πŸ“ Between the Given Range

Let's delve into the java code that checks for Harshad numbers in the specified range.

HarshadNumberChecker.java
Copied
Copy To Clipboard
public class HarshadNumberChecker {

  // Function to check if a number is a Harshad number
  static boolean isHarshad(int num) {
    int sumOfDigits = 0;
    int originalNum = num;

    // Calculate the sum of digits
    while (num > 0) {
      sumOfDigits += num % 10;
      num /= 10;
    }

    // Check if the original number is divisible by the sum of its digits
    return (originalNum % sumOfDigits == 0);
  }

  // Driver program
  public static void main(String[] args) {
    System.out.println("Harshad numbers in the range 1 to 20: ");

    for (int i = 1; i <= 20; i++) {
      if (isHarshad(i)) {
        System.out.print(i + " ");
      }
    }
  }
}

πŸ’» Testing the Program

Output
Harshad numbers in the range 1 to 20:
1 2 3 4 5 6 7 8 9 10 12 18 20

Compile and run the program to see the Harshad numbers in the specified range.

🧠 How the Program Works

  1. The program defines a class HarshadNumberChecker containing a static method isHarshad that checks if a number is a Harshad number.
  2. Inside the method, it calculates the sum of digits and checks if the original number is divisible by the sum.
  3. The main function tests the Harshad numbers in the range 1 to 20 and prints the results.

🧐 Understanding the Concept of Harshad Number

Before delving into the code, let's understand the concept of Harshad numbers. A Harshad number is a positive integer that is divisible by the sum of its digits.

🎒 Optimizing the Program

While the provided program is effective, consider exploring and implementing alternative approaches or optimizations for checking Harshad numbers.

While the provided program is effective, consider exploring and implementing alternative approaches or optimizations for checking Harshad numbers.

πŸ‘¨β€πŸ’» Join our Community:

To get interesting news and instant updates on Front-End, Back-End, CMS and other Frameworks. Please Join the Telegram Channel:

Author

author
πŸ‘‹ Hey, I'm Mari Selvan

For over eight years, I worked as a full-stack web developer. Now, I have chosen my profession as a full-time blogger at codetofun.com.

Buy me a coffee to make codetofun.com free for everyone.

Buy me a Coffee

Share Your Findings to All

Subscribe
Notify of
guest
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Mari Selvan
Mari Selvan
6 months ago

If you have any doubts regarding this article (Java Program to Check Harshad Number), please comment here. I will help you immediately.

We make use of cookies to improve our user experience. By using this website, you agree with our Cookies Policy
AgreeCookie Policy