Programma JavaScript per trovare il numero Armstrong in un intervallo

In questo esempio, imparerai a scrivere un programma in JavaScript per trovare un numero Armstrong tra due valori interi.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione JavaScript:

  • JavaScript per loop

Un numero intero positivo è chiamato numero Armstrong (di ordine n ) se:

abcd … = a n + b n + c n + d n + …

Nel caso di un numero Armstrong di 3 cifre, la somma dei cubi di ciascuna cifra è uguale al numero stesso. Ad esempio, 153 è un numero Armstrong perché:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3

Allo stesso modo, 1634 è un numero Armstrong perché:

 1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 * + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4

Prima di provare questo programma, visitare il programma JavaScript per controllare il numero Armstrong.

Esempio: numeri Armstrong tra due intervalli

 // program to find Armstrong number between intervals // take an input const lowNumber = parseInt(prompt('Enter a positive low integer value: ')); const highNumber = parseInt(prompt('Enter a positive high integer value: ')); console.log ('Armstrong Numbers:'); // looping through lowNumber to highNumber for (let i = lowNumber; i 0) ( let remainder = temp % 10; sum += remainder ** numberOfDigits; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) if (sum == i) ( console.log(i); ) )

Produzione

 Immettere un valore intero positivo basso: 8 Immettere un valore intero positivo alto: 500 Numeri Armstrong: 8 9153 370371407

Nel programma precedente, all'utente viene richiesto di inserire due numeri interi. Uno è il numero intero inferiore dell'intervallo e un altro è il valore intero più alto.

Il parseInt()converte il valore stringa numerica in un valore intero.

Il forciclo viene utilizzato per scorrere i due numeri forniti dall'utente.

Il toString()metodo viene utilizzato per convertire il numero in una stringa. E la lengthproprietà viene utilizzata per trovare la lunghezza di una stringa. Quindi, in questo caso, lengthfornisce le cifre totali del numero.

 let numberOfDigits = i.toString().length;

Nella prima foriterazione del ciclo ( i = 8 ),

  1. Il numero più basso inserito dall'utente viene memorizzato in una variabile temporanea temp.
  2. Un whileciclo viene utilizzato per iterare il numero.
    1. L' operatore modulo % viene utilizzato per ottenere ogni numero di cifre. Quando un numero viene diviso per 10 , il resto è l'ultima cifra. Nella prima iterazione, 8 % 108 .
    2. Il resto viene moltiplicato per il numero di cifre in quel numero (qui 1 ) e la somma viene calcolata.
    3. La cifra viene divisa per 10 per rimuovere l'ultima cifra, ovvero 8 / 10dà 0.
  3. Infine, la somma viene confrontata con il numero inserito dall'utente. Se la somma e il numero sono uguali, viene visualizzato il numero Armstrong.

Il ciclo continua per tutti i numeri che si trovano tra i limiti inferiore e superiore forniti dall'utente. Nell'esempio sopra, il ciclo viene eseguito da 8 a 500 .

Articoli interessanti...