Kako preveriti Armstrongove številke v Javi?

Kako Preveriti Armstrongove Stevilke V Javi



' Armstrongova številka ” nudi vpogled v številske vzorce in matematične lastnosti. Pomaga pri razumevanju konceptov teorije števil in raziskovanju samoreferenčnih odnosov znotraj števil. Poleg tega pomaga pri zagotavljanju točnosti podatkov ali uporabniškega vnosa. Uporaben je lahko tam, kjer je celovitost vnosa ključnega pomena.

Ta blog pomaga pri iskanju Armstrongove številke za navedene podatke.







Kako preveriti Armstrongove številke v Javi?

' Armstrongova številka ” je označeno za identifikacijo števil, ki izpolnjujejo določeno matematično lastnost. Če je podana vrednost enaka seštevku lastnih celih števil, potenjenih na skupno število celih števil podane vrednosti.



Zdaj pa si oglejmo nekaj primerov za boljše razumevanje:



Primer 1: Identifikacija Armstrongovih števil





Obiščite program in preverite, ali je navedena številka številka Armstrong ali ne:

import java.util.Scanner;
// Uvoz potrebnih pripomočkov.
javni razred ArmstrongChecker {
javni statični void main ( Vrvica [ ] args )
// Razglasitev glavnega ( ) metoda
{
Scanner demoTest = nov skener ( System.in ) ;
System.out.print ( 'Vnesite številko za preverjanje: ' ) ;
int numEle = demoTest.nextInt ( ) ;

int origNum = numEle;
int številk = 0 ;
medtem ( izvornaŠt ! = 0 ) {
izvornaŠt / = 10 ;
števke++;
}

int vsota = 0 ;
int temp = numEle;
za ( int i = 0 ; jaz < števke; i++ ) {
int ti = temp % 10 ;
vsota += Math.pow ( ti , števke ) ;
temp / = 10 ;
}

če ( vsota == imena ) {
System.out.println ( imena + 'je Armstrongovo število.' ) ;
} drugače {
System.out.println ( imena + ' ne izpolnjuje pogoja za Armstrongovo število.' ) ;
}
}
}


Opis zgornje kode:



    • Prvič, predmet za ' Skener ' je ustvarjen za pridobitev celega števila od končnega uporabnika z uporabo ' nextInt() ' in shranite pridobljene podatke v spremenljivko z imenom ' NAMES ”.
    • Nato je ta pridobljena vrednost dodeljena spremenljivki tipa int z imenom ' izvornaŠt « in inicializira spremenljivko z imenom » števke ' z ' 0 ”.
    • Potem, ' medtem ” se uporablja zanka, ki večkrat deli prvotno številko z 10 in vsakokrat poveča spremenljivko števk, dokler prvotna številka ne postane 0.
    • Po tem deklarirajte spremenljivko ' vsota « in nastavite vrednost » NAMES ' do ' temp ” spremenljivka. In uporablja ' za ', ki se ponavlja do ' števke ” vrednost spremenljivke.
    • In v vsaki ponovitvi zanke 'za' zadnja številka ' temp ” se ekstrahira z uporabo operatorja modula in shrani v novo spremenljivko “ ti ”. Nato se kocka številke doda v ' vsota ” z uporabo metode Math.pow().
    • Na koncu je ' če potem ” se uporablja za ugotavljanje, ali je izračunana vsota enaka prvotni številki, ki jo je posredoval uporabnik. Če sta obe vrednosti enaki, je podano število Armstrongovo število in obratno.

Po kompilaciji:


Izhod pokaže, da je navedeno število Armstrongovo število.

2. primer: poiščite vsa stalna Armstrongova števila znotraj podane omejitve

Če želite najti vsa Armstrongova števila do podane vrednosti ali omejitve, obiščite spodnjo kodo:

import java.util.Scanner;
import java.lang.Math;

javni razred ArmstsrongNumberExample
{
statična logična vrednost jeArmsNum ( int j ) {
int buff, singDig = 0 , konec = 0 , kalk = 0 ;
buff =j;
medtem ( buff > 0 ) {
buff = buff / 10 ;
singDig++;
}
buff = j;
medtem ( buff > 0 )
{
konec = buff % 10 ;
izračun += ( Math.pow ( konec, singDig ) ) ;
buff = buff / 10 ;
}
če ( j ==izč )
vrnitev prav ;
drugače vrnitev lažno ;
}
javni statični void main ( Argi nizov [ ] )
// Razglasitev glavnega ( ) metoda
{
int proNum;
Skener sc = nov skener ( System.in ) ;
System.out.print ( 'Vstavi zgornjo mejo: ' ) ;
proNum =sc.nextInt ( ) ;
System.out.println ( 'Armstrongova številka do navedene omejitve' + proNum + ' so: ' ) ;
za ( int k = 0 ; k < =zaŠtevilo; k++ )
če ( isArmsNum ( k ) )
System.out.print ( k+ ', ' ) ;
}
}


Razlaga zgornje kode:

    • Najprej deklarirajte več spremenljivk »buff«, »singDig«, »end« in »calc«, ki imajo vrsto » int «, znotraj metode logičnega tipa z imenom » isArmsNum() ”. Prejme parameter, ki je dodeljen spremenljivki z imenom ' buff ”.
    • Nato je ' medtem ” je deklarirana zanka, ki se ponavlja, dokler vrednost buff ne doseže “ 0 ”. Po tem je ' buff ” je modul z ” 10 «, da odstranite zadnjo številko iz navedene vrednosti in povečate » singDig ” spremenljivka.
    • Potem, ' medtem ' se ponovno uporabi zanka nad ' buff ” spremenljivka za ekstrahiranje zadnje številke. Kub števke se izračuna z uporabo ' matematika pow() ' in nato dodan v ' kalk ” spremenljivka.
    • Zdaj pa ' če ” se uporablja za preverjanje, ali je izračunana vrednost v kalk ” je enaka vrednosti, ki jo je posredoval končni uporabnik, ali ne. Ustrezno prikažite tudi sporočilo.
    • Po tem se vnos končnega uporabnika pridobi s pomočjo » Skener ' pripomoček v ' glavni () ” metoda.
    • Na koncu je ' za ” se uporablja zanka, ki ponavlja do podane vrednosti, vsaka ponovitev pa se imenuje isArmsNum() ” metoda. Ta metoda prejme vse vrednosti, dokler ni dosežena podana vrednost, in preveri vsako vrednost za Armstrongovo število.

Po kompilaciji:


Izhod prikaže vsa Armstrongova števila do navedene vrednosti, ki je ' 370 ' v tem primeru.

Zaključek

Če želite najti Armstrongovo število, najprej preštejte števke, ki jih vsebuje navedeno število. Nato izvlecite vsako števko iz navedenega števila eno za drugo s pomočjo operacij modula in deljenja. Nato dvignite vsako celo število vrednosti na potenco skupnega števila celih števil in dobljeno vrednost dodajte novi spremenljivki. Nazadnje preverite, ali je dobljena vrednost spremenljivke enaka navedenemu številu, če je enaka, je podano število Armstrongovo število, sicer ne.