Mikä on Armstrong-luku Java-sovelluksessa?

Armstrong-luku Java-järjestelmässä, Armstrong on sellainen, jossa numeron yksittäisten numeroiden kuutioiden summa on yhtä suuri kuin luku itse. Armstrong-luku on erityinen numero, jossa numerot ensin poimitaan, sitten ne kuutioidaan ja lopuksi kaikki yksittäisten numeroiden kuutiot lisätään numeron saamiseksi. Jos näin löydetty luku on yhtä suuri kuin alkuperäinen numero, niin vastaava numero tunnetaan Armstrong-numerona. Esimerkki Armstrongin luvusta on 153. Jos hajotamme numerot 153, ne ovat 1, 5 ja 3. Sitten löydämme vastaavien numeroiden kuutio ja lopuksi laskemme numeroiden kuutio.

153= (1*1*1)+(5*5*5)+(3*3*3)
370= (3*3*3)+(7*7*7)+(0*0*0)

Tällä tavoin voimme laskea onko luku Armstrong-numero vai ei.

Esimerkkejä Armstrong-numerosta Java-sovelluksessa

Näemme Java-ohjelmassa Armstrong-numeron esimerkkien avulla.

Esimerkki # 1

Koodausesimerkissä käytämme Java-ohjelmointikieltä määrittääksesi, onko numero Armstrong-numero vai ei. Jos syötetty numero on Armstrong-numero, ohjelma tulostaa sen automaattisesti Armstrong-numerona ja jos sitä ei ole, se vastaa automaattisesti, että numero ei ole Armstrong-numero. Voimme syöttää kolminumeroisia tai nelinumeroisia arvoja tarkistaaksesi, onko numero Armstrong-numero vai ei.

Ohjelman logiikka on sellainen, että temp-muuttujaan jokainen vastaavan numeron numero tallennetaan. Sitten numero kuutioidaan, jotta saadaan selville vastaavan numeron kuutio, joka on tallennettu toiseen muuttujan kokonaismäärään. Lopuksi kokonaismäärä tarkistetaan vastaavalla alkuperäisellä numerolla. Numerot saadaan yksi kerrallaan jakamalla luku jaettuna 10: llä kussakin vaiheessa ja hankkimalla loput numerosta ja sitten kuutioimalla numero saadaksesi vastaavan numeron kuutio.

Koodi:

import java.io.*;
public class Armstrong
(
public static void main(String() args)throws IOException
(
BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter a number");
int num = Integer.parseInt(br.readLine());
int number, digit, sum = 0;
number = num;
while (number != 0)
(
digit = number % 10;
sum = sum + digit*digit*digit;
number /= 10;
)
if(sum == num)
System.out.println(num + " is an Armstrong number");
else
System.out.println(num + " is not an Armstrong number");
)
)

lähtö:

Ensimmäisessä ohjelmassa kirjoitamme numerot 370 ja 153 numeroina tarkistaaksemme, ovatko ne Armstrongia. Annamme myös numerona 269 tarkistaaksemme, onko numero Armstrong. Saamme vastaavan ohjelman ulostulon, että numerot 370 ja 153 ovat Armstrong-numeroita, kun taas luku 269 ei ole Armstrong-numero.

Esimerkki 2

Toisessa koodausesimerkissä valitaan numeroalue, joka tarkistetaan, ovatko ne Armstrong-numeroita vai eivät. Alue on 150 - 160. Valitsemme alueen ja tarkistamme tulosteen, onko numero Armstrong-numero vai ei. Sitten näemme tulosteen. Käytetty logiikka on samanlainen kuin logiikka, jota käytettiin Armstrong-numeron löytämiseen. Numeron vastaavat numerot lasketaan ja sitten ne kuutioidaan ja summataan lopullisen kokonaismäärän löytämiseksi. Jos lopullinen kokonaismäärä on yhtä suuri kuin alkuperäinen luku, niitä pidetään Armstrong-lukuina, jotka lasketaan.

Koodi:

import java.io.*;
public class ArmstrongRange
(
public static void main(String() args)throws IOException
(
for(int num= 150; num<160; num++)
(
int number, digit, sum = 0;
number = num;
while (number != 0)
(
digit = number % 10;
sum = sum + digit*digit*digit;
number /= 10;
)
if(sum == num)
System.out.println(num + " is an Armstrong number");
else
System.out.println(num + " is not an Armstrong number");
)
)
)

lähtö:

Näyteulostulossa näemme, että kaikki numerot välillä 150 - 160 on tarkistettu, ovatko ne Armstrong-lukuja vai eivät. Ohjelma on ilmoittanut, että vain 153 on Armstrong-luku, jonka numerokuutioiden summa on yhtä suuri kuin alkuperäinen numero. Kaikki muut numerot on ilmoitettu ei-Armstrong-numeroina.

Esimerkki 3

Tässä koodausesimerkissä näemme luettelon Armstrong-numeroista, joita on välillä 365 - 375. Muutamme Armstrong-numeroille tarkistettavien arvojen aluetta. Koodauksen näytelogiikka on täsmälleen sama kuin edelliset. Suurin ero on vain se, että tarkistettavien numeroiden alue muuttuu ja ne eroavat hiukan viimeisestä koodirivistä.

Yksittäiset numerot otetaan, kuutioidaan ja summataan numeron saamiseksi. Jos tämä numero on sama kuin alkuperäinen numero, alkuperäinen numero tunnetaan Armstrong-numerona, muuten se ei ole Armstrong-numero.

Koodi:

import java.io.*;
public class ArmstrongRange
(
public static void main(String() args)throws IOException
(
for(int num= 365; num<375; num++)
(
int number, digit, sum = 0;
number = num;
while (number != 0)
(
digit = number % 10;
sum = sum + digit*digit*digit;
number /= 10;
)
if(sum == num)
System.out.println(num + " is an Armstrong number");
else
System.out.println(num + " is not an Armstrong number");
)
)
)

lähtö:

Ohjelman antamassa näyteulostuksessa näemme, että vain 371 ja 370 ovat Armstrong-numeroita, kun taas muut numerot eivät ole, koska yksittäisten numeroiden kuutioiden summa ei lisää alkuperäistä lukua.

Johtopäätös - Armstrong-numero Java

Tässä artikkelissa olemme nähneet Armstrong-numeron toiminnan ja määritelmän. Ensin tarkistetaan, onko syötetty numero Armstrong-numero vai ei. Toiseksi syötetään arvoalue 150 - 160 ja tarkistetaan kuinka monta Armstrong-lukua on näiden arvojen välillä. Kolmanneksi, syötetään lukualue 365 - 375 ja saadaan selville, että 370 ja 371 ovat Armstrong-numeroita. Armstrong-numerot ovat erikoislukuja, joita käytetään lukuteoriassa ja joita voidaan käyttää joidenkin numeroiden numeroiden luonteen löytämiseen yhdessä niiden kuutioiden summaamisen kanssa.

Suositellut artikkelit

Tämä on opas Java-ohjelmiston Armstrong-numeroon. Tässä kuinka kuvailla Armstrong-numeroa Javassa muutaman esimerkin avulla. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Staattinen avainsana Java
  2. Palindrome Java
  3. Ylivoimainen Java
  4. Satunnaislukugeneraattori Java