Αναγνώστες σαν εσάς βοηθούν στην υποστήριξη του MUO. Όταν κάνετε μια αγορά χρησιμοποιώντας συνδέσμους στον ιστότοπό μας, ενδέχεται να κερδίσουμε μια προμήθεια θυγατρικών. Διαβάστε περισσότερα.

Ο αριθμός Armstrong είναι μια βασική έννοια στον τομέα της κρυπτογράφησης και της αποκρυπτογράφησης για την ασφάλεια των δεδομένων.

Η γενική έννοια της επεξεργασίας των ψηφίων ενός αριθμού είναι μια θεμελιώδης τεχνική. Μπορείτε να λύσετε πολλές εργασίες με αυτήν την προσέγγιση, όπως άθροιση ψηφίων, λήψη του γινόμενου ψηφίων, μέτρηση ψηφίων και αντιστροφή ενός αριθμού.

Τι είναι όμως ο αριθμός Armstrong και πώς δοκιμάζετε έναν;

Τι είναι ο αριθμός Armstrong;

Ένας αριθμός Άρμστρονγκ είναι ένας αριθμός του οποίου το άθροισμα των κύβων των ψηφίων του ισούται με τον ίδιο τον αριθμό. Για παράδειγμα, το 153 είναι ένας αριθμός Άρμστρονγκ. Αν πάρετε τα ψηφία του 153 μεμονωμένα και τα βάλετε σε κύβο:

(1 × 1 × 1) + (5 × 5 × 5) + (3 × 3 × 3)

Στη συνέχεια προσθέστε τα αποτελέσματα:

1 + 125 + 27

Θα λάβετε 153, ίδιο με τον αρχικό αριθμό.

instagram viewer

Ένας αλγόριθμος για την εύρεση ενός αριθμού Armstrong

Η σύνταξη ενός αλγορίθμου είναι το πρώτο βήμα για την υλοποίηση οποιουδήποτε προγράμματος. Μπορείτε να χρησιμοποιήσετε τον αλγόριθμο ως αναφορά για να γράψετε ψευδοκώδικα και στη συνέχεια να τον εφαρμόσετε χρησιμοποιώντας τη γλώσσα προγραμματισμού που θέλετε. Ένας αλγόριθμος σάς δίνει την ακριβή σειρά οδηγιών που πρέπει να ακολουθήσετε, εξαλείφοντας τα λογικά σφάλματα και καθιστώντας την υλοποίηση απλούστερη.

Ακολουθεί ο αλγόριθμος για να βρείτε εάν ένας αριθμός είναι Armstrong ή όχι:

  1. Δηλώστε τις μεταβλητές sum, temp, n, r
  2. Πάρτε την τιμή του n από τον χρήστη
  3. Αρχικοποιήστε τη μεταβλητή άθροισμα σε 0 και δημιουργήστε αντίγραφο ασφαλείας του n ως temp = n
  4. Επαναλάβετε τα βήματα 5 - 7 ενώ n > 0
  5. r = n % 10
  6. άθροισμα = άθροισμα + κύβος κάθε ψηφίου (r × r × r)
  7. n = n / 10
  8. Εάν το άθροισμα ισούται με θερμοκρασία, εμφανίστε "Ο αριθμός είναι αριθμός Armstrong"
  9. Διαφορετικά, εμφανίστε "Ο αριθμός δεν είναι αριθμός Armstrong"

Ψευδοκώδικας για την υλοποίηση του αλγόριθμου Armstrong

Ο ψευδοκώδικας μπορεί να είναι ένα χρήσιμο βήμα στο σχεδιασμό της υλοποίησης ενός αλγορίθμου. Η σύνταξη του ψευδοκώδικα σάς βοηθά να τον μετατρέψετε εύκολα σε κώδικα σε οποιαδήποτε γλώσσα προγραμματισμού. Εδώ είναι ο ψευδοκώδικας για την υλοποίηση του αριθμού Armstrong:

Το πρόγραμμα Armstrong στο C

Παρατηρήστε τον ψευδοκώδικα παραπάνω και μετατρέψτε κάθε πρόταση σε κώδικα C.

Ξεκινήστε με την εισαγωγή stdio.h για να εκτελέσετε τις λειτουργίες εισόδου και εξόδου. Δηλώστε το κύριος λειτουργούν και αρχίζουν να εφαρμόζουν τη λογική του προγράμματος. Χρήση n για να αποθηκεύσετε τον αριθμό εισόδου, r για να αποθηκεύσετε τα μεμονωμένα ψηφία του αριθμού, άθροισμα για να αποθηκεύσετε το άθροισμα των κύβων των ψηφίων και θερμοκρασία για να αποθηκεύσετε ένα αντίγραφο του αριθμού.

Χρησιμοποιήστε το printf λειτουργία για να ζητήσει από το χρήστη να εισαγάγει έναν αριθμό. Χρησιμοποιήστε το scanf λειτουργία για να διαβάσετε τον αριθμό και να τον αποθηκεύσετε σε μεταβλητή n. %ρε είναι ο προσδιοριστής δεκαδικής μορφής για να λάβει έναν ακέραιο ως είσοδο.

Διαγράψτε οποιαδήποτε τιμή σκουπιδιών αρχικοποιώντας το άθροισμα ως μηδέν και δημιουργήστε ένα αντίγραφο ασφαλείας του n ως θερμοκρασία.

#περιλαμβάνω <stdio.h>

ενθκύριος()
{
ενθ n, r, άθροισμα, θερμοκρασία;
printf("Εισαγάγετε έναν αριθμό: ");
scanf("%ρε", &n);
άθροισμα = 0; θερμοκρασία = n;

Δηλώστε α ενώ βρόχος που τρέχει έως ότου ο αριθμός είναι μηδέν ή μικρότερος. Μέσα στον βρόχο υπάρχει μια διαδικασία τριών βημάτων που μπορείτε να χρησιμοποιήσετε σε διάφορες άλλες εργασίες προγραμματισμού. Τα τρία βήματα είναι:

  1. Λάβετε το μεμονωμένο ψηφίο του αριθμού παίρνοντας το μέτρο του αριθμού με το 10. Όταν διαιρείτε οποιονδήποτε αριθμό με το 10 συνολικά, το υπόλοιπο είναι το ίδιο το τελευταίο ψηφίο. Για παράδειγμα, όταν διαιρείτε το 153 με το 10, το ακέραιο αποτέλεσμα είναι 15 και ο συντελεστής είναι 3.
  2. Όταν έχετε το μεμονωμένο ψηφίο, μπορείτε να εκτελέσετε την επιθυμητή λειτουργία. Για να βρείτε έναν αριθμό Armstrong, η επιθυμητή λειτουργία είναι το άθροισμα των κύβων των ψηφίων του αριθμού. Πάρτε τον κύβο του ψηφίου r και προσθέστε τον στη μεταβλητή αθροίσματος.
  3. Καταργήστε το τελευταίο ψηφίο του αριθμού διαιρώντας το με το 10. Διαιρώντας με το 10, παίρνετε το πηλίκο, σε αυτήν την περίπτωση, 15.
ενώ (n > 0) {
r = n % 10;
sum = άθροισμα + (r * r * r);
n = n / 10;
}

Ελέγξτε εάν το άθροισμα που προκύπτει είναι ίσο με τον αρχικό αριθμό. Αν είναι ίσοι, ο αριθμός είναι όντως αριθμός Άρμστρονγκ, διαφορετικά δεν είναι.

αν (θερμοκρασία == άθροισμα)
printf("Ο αριθμός είναι ένας αριθμός Armstrong\n");
αλλού
printf("Ο αριθμός δεν είναι αριθμός Armstrong\n");

ΕΠΙΣΤΡΟΦΗ0;
}

Άλλες Εφαρμογές του Γενικού Αλγορίθμου

Αλλάζοντας το δεύτερο βήμα της λογικής τριών βημάτων που φαίνεται παραπάνω, μπορείτε να εφαρμόσετε μια ποικιλία προγραμμάτων.

1. Άθροισμα, γινόμενο των ψηφίων του αριθμού

Για να πάρετε το άθροισμα των ψηφίων ενός αριθμού, απλώς αντικαταστήστε τη γραμμή με:

άθροισμα = άθροισμα + r;

Για γινόμενο, δηλώστε τη μεταβλητή prod ως 1 και αντικαταστήστε το άθροισμα πρόσθεσης με ένα σύμβολο πολλαπλασιασμού:

prod = prod * r;

2. Πλήθος ψηφίων του αριθμού

Προς την μετρήστε τα ψηφία ενός αριθμού, απλώς αρχικοποιήστε ένα πλήθος μεταβλητών στο μηδέν, παραλείψτε το βήμα ένα και αυξήστε το μέχρι το n να ισούται με μηδέν. Η υλοποίηση του βρόχου θα μοιάζει με αυτό:

ενώ (n > 0) {
count++;
n = n / 10;
}

3. Αντίστροφο αριθμού, Αριθμός παλίνδρομου

Για να αντιστρέψετε έναν αριθμό, αρχικοποιήστε μια μεταβλητή rev σε ένα και προσθέστε την αφού πολλαπλασιάσετε με το δέκα:

rev = (rev * 10) + r;

Μόλις λάβετε το αντίστροφο ενός αριθμού, συγκρίνετε τον με το αντίγραφο του ίδιου του αρχικού αριθμού. Εάν ο αντίστροφος αριθμός ισούται με τον ίδιο τον αριθμό, είναι αριθμός Palindrome.

4. Το μικρότερο και το μεγαλύτερο ψηφίο ενός αριθμού

Αρχικοποιήστε μια μεταβλητή min ως εννέα και συγκρίνετε τη με το ψηφίο που εξήχθη από το πρώτο βήμα για να βρείτε το μικρότερο ψηφίο ενός αριθμού. Μπορείτε να το εφαρμόσετε ως εξής:

αν (ρ < λεπτά) {
min = r;
}

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

αν (ρ > Μέγιστη) {
max = r;
}

Έτσι μπορείτε να βρείτε τα μεγαλύτερα και τα μικρότερα ψηφία ενός αριθμού.

5. Ειδικοί Αριθμοί

Υπάρχουν πολλοί άλλοι αριθμοί, όπως ένας αριθμός Armstrong, που μπορείτε να υπολογίσετε. Σε αυτά περιλαμβάνονται ο αριθμός Νέον, ο Αυτόμορφος αριθμός, ο αριθμός Κρισναμούρθυ, ο αριθμός Buzz, ο Τέλειος αριθμός, ο Φιλικός αριθμός και ο Δίδυμος πρώτος αριθμός.

Προγραμματισμός και Μαθηματικά

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

Ο λογισμός, τα διακριτά μαθηματικά και η στατιστική χρησιμοποιούνται ευρέως στην επίλυση προβλημάτων και στο σχεδιασμό αλγορίθμων. Τα μαθηματικά ενισχύουν τις υπολογιστικές σας δεξιότητες και αποτελούν ουσιαστικό μέρος του προγραμματισμού.