Hoe kan ik controleren of een bepaald nummer een Armstrong-nummer is of niet?



Dit artikel over Armstrong-nummer in Java zal u helpen begrijpen hoe u kunt controleren of het opgegeven nummer een Armstrong-nummer is of niet in Java.

In de getaltheorie, een narcistisch getal, is een Armstrong-getal vernoemd naar Michael F. Armstrong is een getal dat de som is van zijn eigen cijfers, elk verheven tot de macht van het aantal cijfers. In dit Armstrong-nummer in artikel, laten weleer hoe u kunt controleren of een bepaald nummer een Armstrong-nummer is of niet.

De onderwerpen die in dit artikel worden besproken zijn:





Laten we beginnen!

Wat is een Armstrong-nummer?

De som van de kracht van individuele cijfers is gelijk aan het getal zelf. Tussen 1 en 1000 zijn er vijf Armstrong-nummers. Ze zijn: - 1, 153, 370, 371, 407. Hier is de algemene vergelijking.



abcd ... = eenn+ bn+ cn+ dn+ ... 

Laten we het concept eens bekijken met enkele voorbeelden.
Voorbeeld1: 370

3 * 3 * 3 + 7 * 7 * 7 + 0 * 0 * 0 = 27 + 343 + 0 = 370

Voorbeeld 2: 407
4 * 4 * 4 + 0 * 0 * 0 + 7 * 7 * 7 = 64 + 0 + 343 = 407



Ik hoop dat je nu duidelijk bent over het concept. Verderop, laten we eens kijken hoecontroleer of een bepaald nummer een Armstrong-nummer is of niet in Java.

Java-programma om een ​​Armstrong-nummer te controleren

Je kunt controlerenof een bepaald nummer een Armstrong-nummer is of niet in Java, op twee manieren:

  1. Gebruik de ‘while’-lus
  2. Java ‘for’ lus

Gebruik makend van 'terwijl' lus

In het geval van een Armstrong-nummer van 3 cijfers, is de som van kubussen van elk cijfer gelijk aan het nummer zelf. Het onderstaande voorbeeldprogramma controleert of een gegeven 3-cijferig nummer een Armstrong-nummer is of niet.

pakket MyPackage public class ArmstrongNumber {public static void main (String [] args) {int num = 371, originalNum, rest, result = 0 originalNum = num while (originalNum! = 0) {rest = originalNum% 10 resultaat + = Math. pow (rest, 3) originalNum / = 10} if (result == num) System.out.println (num + 'is een Armstrong-nummer.') else System.out.println (num + 'is geen Armstrong-nummer. ')}}

Uitvoer : 371 is een Armstrong-nummer.


De stappen in de code zijn:

hoe u bestanden in java gebruikt
  • De eerste regel in de while-lus haalt het laatste cijfer op (rest) van het opgegeven aantal
  • De tweede regel berekent de kubus van het laatste cijfer uit de vorige stap en voegt deze toe aan de resultaat
  • Vervolgens wordt het laatste cijfer verwijderd uit origineelNum na deling door 10

Gebruiken voor ' lus

pakket MyPackage public class Armstrong {public static void main (String [] args) {int number = 9474, originalNumber, rest, result = 0, n = 0 originalNumber = number for (originalNumber! = 0 originalNumber / = 10) {n ++} originalNumber = nummer voor (originalNumber! = 0 originalNumber / = 10) {rest = originalNumber% 10 resultaat + = Math.pow (rest, n)} if (resultaat == nummer) System.out.println (nummer + 'is een Armstrong-nummer. ') Else System.out.println (nummer +' is geen Armstrong-nummer. ')}}

Uitgang:

9474 is een Armstrong-nummer.

Hier hebben we twee for-loops. De eerste berekent het aantal cijfers in het opgegeven nummer. De tweede lus controleert of het opgegeven nummer een Armstrong-nummer is of niet.

Hiermee zijn we aan het einde van dit artikel gekomen. Ik hoop dat de hierboven beschreven inhoud een meerwaarde heeft voor uw Java-kennis. Blijf lezen, blijf ontdekken!

Bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld. We zijn hier om je te helpen bij elke stap op je reis, om naast deze Java-interviewvragen ook een curriculum te bedenken dat is ontworpen voor studenten en professionals die een Java-ontwikkelaar willen worden.

Heeft u een vraag voor ons? Vermeld het in de commentarensectie van deze 'Armstrong-nummer in Java' -blog en we nemen zo snel mogelijk contact met u op.