Maison >Java >javaDidacticiel >Comment vérifier si un numéro est un numéro Harshad en Java ?
Le nombre Harshad est divisible par la somme de ses chiffres. En termes simples, si la somme de tous les chiffres d’un nombre est un facteur de ce nombre, alors c’est un nombre Harshad.
Dans cet article, nous verrons comment vérifier le numéro Harshad à l'aide du langage de programmation Java.
Entrez le numéro 18
Vérifions-le en utilisant la logique du nombre Harshad −
La somme des chiffres du nombre = 1 + 8 = 9.
Donc, 18 est divisible par 9.
Par conséquent, 18 est un nombre Harshad.
La traduction deLe numéro saisi est le 3
Vérifions-le en utilisant la logique du nombre Harshad −
La somme des chiffres du nombre = 3.
Donc, 3 est divisible par 3.
Ainsi, 3 est le nombre Harshad.
La traduction chinoise deEntrez le numéro 15
Vérifions-le en utilisant la logique du nombre Harshad −
La somme des chiffres du nombre = 1 + 5 = 6.
Donc, 15 n'est pas divisible par 6.
Par conséquent, 14 n’est pas un nombre Harshad.
Quelques autres exemples de nombres Harshad incluent 1, 2, 4, 5, 6, 7, 8, 9, 10, 12, 18, 20, etc.
Convertissez une valeur entière en valeur de chaîne à l'aide de la méthode intégrée toString().
Voici la syntaxe pour convertir une valeur entière en valeur de chaîne, puis trouver sa longueur et attribuer la longueur à une variable entière pour obtenir le nombre total de chiffres dans un nombre -
String str = Integer.toString(input_number);
Pour obtenir la longueur d'un entier, nous utiliserons la méthode intégrée length() de la classe Java String La méthode renvoie la longueur de l’objet String.
int length = st.length();
Pour obtenir le caractère à une position/index spécifique dans une chaîne, nous utilisons la méthode charAt() . où charAt(i)-'0' renvoie la valeur entière réelle.
int num = st.charAt(i)-‘0’;
Où "st" fait référence à la chaîne et "i" est la variable itératrice qui parcourt la chaîne.
Étape 1 - Obtenez un entier via l'initialisation ou la saisie de l'utilisateur.
Étape 2 - Trouvez la somme de chaque chiffre du nombre en parcourant chaque chiffre du nombre.
Étape 3 - Vérifiez ensuite si le numéro d'origine est divisible par la somme de tous les chiffres du numéro. Le nombre donné est un nombre Harshad s'il est divisible, sinon ce n'est pas un nombre Harshad
Étape 1 - Obtenez un entier via l'initialisation ou la saisie de l'utilisateur.
Étape 2 - Convertissez l'entier en chaîne à l'aide de la méthode intégrée toString().
Étape 3 - Trouvez la longueur de la chaîne en utilisant la méthode intégrée length().
Étape 4 - Ensuite, en utilisant une boucle for, parcourez jusqu'à la longueur de la chaîne et utilisez charAt(i)-' pour obtenir une valeur entière 0' de la chaîne et enregistrez la somme de tous les nombres.
Étape 5 - Vérifiez ensuite si le numéro d'origine est divisible par la somme de tous les chiffres de ce numéro. Le nombre donné est un nombre Harshad s'il est divisible, sinon ce n'est pas un nombre Harshad.
Méthode 1 : Sans utiliser de chaînes
Algorithme-1 nous pourrons vérifier si un nombre est un nombre Harshad.
Exemplepublic class Main{ //main method public static void main(String args[]){ //Declared an integer variable and initialized a number as value int originalNumber = 21; //printing the given number to be checked System.out.println("Given number: "+originalNumber); //keep a copy of original number int copyOfOriginalNumber = originalNumber; //initialize sum as 0 int sum = 0; //Find sum of all digits of the number //continue the loop till the number is greater than 0 while(originalNumber > 0){ //get the rightmost digit of the number by using % operator int rem = originalNumber%10; //add the digit(rem) to sum sum = sum + rem; //remove the rightmost digit from number and get the updated number originalNumber = originalNumber/10; } //printing the result if(copyOfOriginalNumber % sum == 0) System.out.println(copyOfOriginalNumber+" is a Harshadnumber"); else System.out.println(copyOfOriginalNumber+" is not a Harshadnumber"); } }
Given number: 21 21 is a Harshad number
Exemple
public class Main{ //main method public static void main(String args[]){ //Declared an integer variable and initialized a number as value int originalNumber = 40; //printing the given number to be checked System.out.println("Given number: "+originalNumber); //keep a copy of original number int copyOfOriginalNumber = originalNumber; //initialize sum as 0 int sum = 0; //convert the integer to string by using toString() method String str = Integer.toString(originalNumber); //find length of String by using length() method //which is nothing but total number of digits in the given number int length=str.length(); //iterate the String and get the digits by using charAt(i)-'0' //find the sum of digits for(int i = 0; i < length; i++){ sum += str.charAt(i)-'0'; } //printing the result if(copyOfOriginalNumber % sum == 0) System.out.println(copyOfOriginalNumber+" is a Harshad number"); else System.out.println(copyOfOriginalNumber+" is not a Harshad number"); } }
Given number: 40 40 is a Harshad number
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!