Kuinka tarkistaa, onko annettu numero Armstrong-numero vai ei?



Tämä artikkeli Java-sovelluksen Armstrong-numerosta auttaa sinua ymmärtämään, kuinka annettu numero on Armstrong-numero vai ei.

Numeroteoriassa, narsistinen numero, Armstrongin numero on nimetty Michael F. Armstrongin mukaan, joka on sen omien numeroiden summa, joista kukin on nostettu numeroiden lukumäärään. Tässä Armstrong-numerossa artikkeliopi tarkistamaan, onko annettu numero Armstrongin numero vai ei.

Tässä artikkelissa käsitellään seuraavia aiheita:





Aloitetaanpa!

Mikä on Armstrong-luku?

Yksittäisten numeroiden voiman summa on sama kuin numero itse. Välillä 1-1000 on viisi Armstrong-numeroa. Ne ovat: - 1, 153, 370, 371, 407. Tässä on yleinen yhtälö.



abcd ... = an+ bn+ cn+ dn+ ... 

Katsotaanpa käsite muutamilla esimerkeillä.
Esimerkki 1: 370

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

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



yhdistä lajittelupuu 4 elementtiä

Toivon, että ymmärrät käsitteen nyt. Jatka, anna tarkistaa mitentarkista, onko annettu numero Armstrongin numero Java-muodossa.

Java-ohjelma tarkistaa Armstrong-numero

Voit tarkistaaonko tietty numero Armstrong-numero vai ei Java-muodossa kahdella tavalla:

  1. Käyttämällä 'while' -silmukkaa
  2. Java 'for' -silmukka

Käyttämällä 'sillä aikaa' silmukka

Jos kyseessä on 3-numeroinen Armstrong-luku, jokaisen numeron kuutioiden summa on yhtä suuri kuin itse numero. Alla oleva esimerkkiohjelma tarkistaa, onko annettu 3-numeroinen luku Armstrong-numero vai ei.

paketti MyPackage public class ArmstrongNumber {public static void main (String [] args) {int num = 371, originalNum, jäännös, result = 0 originalNum = num while (originalNum! = 0) {jäännös = originalNum% 10 tulos + = Math. pow (jäännös, 3) originalNum / = 10} if (tulos == num) System.out.println (num + 'on Armstrongin numero.') else System.out.println (num + 'ei ole Armstrongin numero. ')}}

Tuotos : 371 on Armstrongin numero.


Koodissa luetellut vaiheet ovat:

  • Ensimmäinen rivi, kun taas silmukka poimii viimeisen numeron (loput) määritetystä numerosta
  • Toinen rivi laskee edellisestä vaiheesta otetun viimeisen numeron kuution ja lisää sen tulos
  • Sitten viimeinen numero poistetaan alkuperäinenNum 10: llä jaon jälkeen

Käyttämällä sanaa ' silmukka

paketti MyPackage public class Armstrong {public static void main (String [] args) {int number = 9474, originalNumber, jäännös, tulos = 0, n = 0 originalNumber = numero kohteelle (originalNumber! = 0 originalNumber / = 10) {n ++} alkuperäinen numero = numero (alkuperäinen numero! = 0 alkuperäinen numero / = 10) {jäännös = alkuperäinen numero% 10 tulos + = Math.pow (jäännös, n)} jos (tulos == numero) System.out.println (luku + 'on Armstrongin numero. ') Else System.out.println (numero +' ei ole Armstrongin numero. ')}}

Tuotos:

9474 on Armstrongin numero.

Tässä meillä on kaksi silmukoita. Ensimmäinen laskee annettujen numeroiden lukumäärän. Toinen silmukka tarkistaa, onko annettu numero Armstrong-numero vai ei.

Tällä olemme päässeet tämän artikkelin loppupuolelle. Toivon, että yllä selitetty sisältö lisäsi arvoa Java-tietämykseesi. Jatka lukemista, jatka tutkimista!

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Olemme täällä auttaaksemme sinua matkasi jokaisessa vaiheessa, jotta tulemme tämän java-haastattelukysymyksen lisäksi, keksimme opetussuunnitelman, joka on tarkoitettu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä.

Onko sinulla kysymys meille? Mainitse se tämän Armstrong-numeron Java-blogin kommenttiosassa, niin otamme sinuun yhteyttä mahdollisimman pian.