Πρόγραμμα JavaScript για έλεγχο αριθμού Armstrong (με παραδείγματα)

Σε αυτό το παράδειγμα, θα μάθετε να γράφετε ένα πρόγραμμα σε JavaScript για να ελέγξετε αν ένας αριθμός είναι αριθμός Armstrong ή όχι.

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες ενότητες προγραμματισμού JavaScript:

  • Τελεστές JavaScript
  • Javascript ενώ και κάντε… ενώ Loop

Ένας θετικός ακέραιος αριθμός ονομάζεται αριθμός Armstrong (της τάξης n) εάν

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

Στην περίπτωση αριθμού Armstrong 3 ψηφίων, το άθροισμα των κύβων κάθε ψηφίου είναι ίσο με τον ίδιο τον αριθμό. Για παράδειγμα, το 153 είναι ένας αριθμός Armstrong επειδή

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

Ομοίως, το 1634 είναι ένας αριθμός Armstrong επειδή:

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

Παράδειγμα 1: Ελέγξτε τον Armstrong Αριθμός τριών ψηφίων

 // program to check an Armstrong number of three digits let sum = 0; const number = prompt('Enter a three-digit positive integer: '); // create a temporary variable let temp = number; while (temp> 0) ( // finding the one's digit let remainder = temp % 10; sum += remainder * remainder * remainder; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) // check the condition if (sum == number) ( console.log(`$(number) is an Armstrong number`); ) else ( console.log(`$(number) is not an Armstrong number.`); )

Παραγωγή

 Εισαγάγετε έναν τριψήφιο θετικό ακέραιο: το 153 153 είναι ένας αριθμός Armstrong.

Το παραπάνω πρόγραμμα λαμβάνει πληροφορίες από τον χρήστη. Τότε,

  1. Ο αριθμός που εισάγει ο χρήστης αποθηκεύεται σε μια προσωρινή μεταβλητή temp.
  2. Ένας whileβρόχος χρησιμοποιείται για να επαναλάβει μια τριψήφια τιμή.
    1. Ο τελεστής μέτρου % χρησιμοποιείται για τη λήψη κάθε ψηφίου αριθμού. Όταν ένας αριθμός διαιρείται με 10 , το υπόλοιπο είναι το τελευταίο ψηφίο. Στην πρώτη επανάληψη, 153 % 10δίνει 3 .
    2. Ο κύβος του υπόλοιπου ψηφίου υπολογίζεται πολλαπλασιάζοντας το ψηφίο τρεις φορές. Και ο κύβος προστίθεται στη sumμεταβλητή.
    3. Το ψηφίο διαιρείται με 10 για να αφαιρεθεί το τελευταίο ψηφίο.
    4. Ο whileβρόχος συνεχίζει να επαναλαμβάνει και διαιρεί τον αριθμό με 10 έως ότου ο αριθμός είναι 0 .
  3. Τέλος, το άθροισμα συγκρίνεται με τον αριθμό που εισήγαγε ο χρήστης. Εάν το άθροισμα και ο αριθμός είναι ίσοι, ο αριθμός είναι αριθμός Armstrong.

Σημείωση : Στο παραπάνω πρόγραμμα, ο κύβος ενός αριθμού θα μπορούσε να υπολογιστεί χρησιμοποιώντας έναν εκθέτη **. Για παράδειγμα,sum += remainder ** 3;

Παράδειγμα 2: Ελέγξτε τον Armstrong Αριθμός n ψηφίων

 // program to check an Armstrong number of n digits // take an input const number = prompt("Enter a positive integer"); const numberOfDigits = number.length; let sum = 0; // create a temporary variable let temp = number; while (temp> 0) ( let remainder = temp % 10; sum += remainder ** numberOfDigits; // removing last digit from the number temp = parseInt(temp / 10); // convert float into integer ) if (sum == number) ( console.log(`$(number) is an Armstrong number`); ) else ( console.log(`$(number) is not an Armstrong number.`); )

Παραγωγή

 Εισαγάγετε έναν θετικό ακέραιο αριθμό: 92727 92727 είναι ένας αριθμός Armstrong

Στο παραπάνω πρόγραμμα, ελέγχεται ένας αριθμός Arm ψηφίων n.

Όταν ο χρήστης εισάγει έναν αριθμό, λαμβάνεται ως συμβολοσειρά. Η lengthιδιότητα επιστρέφει το μήκος μιας συμβολοσειράς.

Ο αριθμός που εισάγει ο χρήστης αποθηκεύεται σε μια tempμεταβλητή. Και ένας whileβρόχος χρησιμοποιείται για να επαναλάβει έως ότου η τιμή του είναι μικρότερη από 0 . Κάθε ψηφίο του αριθμού αυξάνεται με τη δύναμη του μήκους του αριθμού.

ενδιαφέροντα άρθρα...