C++ Modulus

C Modulus



Σε πολλές γλώσσες προγραμματισμού, χρησιμοποιούμε συχνά έναν τελεστή που ονομάζεται 'modulus' με την αναπαράσταση συμβόλου ως '%'. Αυτός ο τελεστής συντελεστή χρησιμοποιείται για να βρει το υπόλοιπο όταν οι δύο αριθμητικοί ακέραιοι αριθμοί ή αριθμοί διαιρούνται μεταξύ τους. Αυτός ο τελεστής παίρνει τους δύο τελεστές: dividend και divisor. Αυτό που μένει αφού γίνει η διαίρεση τους είναι το υπόλοιπο, X % Y = R; όπου X και Y είναι μέρισμα και διαιρέτες αντίστοιχα και R είναι το υπόλοιπο. Χρησιμοποιούμε αυτό το υπόλοιπο ως πληροφορία εάν θέλουμε να μάθουμε εάν οι δύο διαιρετικοί αριθμοί είναι παράγοντες του καθενός ή όχι. Χρησιμοποιούμε επίσης το υπόλοιπο για να μας ενημερώσουμε αν ο αριθμός είναι άρτιος ή μονός.

Διαδικασία
Υπάρχουν πολλές χρήσεις του τελεστή modulus που χρησιμοποιούμε για διαφορετικές συναρτήσεις σε μια γλώσσα προγραμματισμού. Θα εκτελέσουμε συντελεστή για διαφορετικές συναρτήσεις για διαφορετικά παραδείγματα. Κάθε παράδειγμα θα μας ενημερώσει για τη διαφορετική χρήση του τελεστή συντελεστή. Λοιπόν, ας ψάξουμε να λύσουμε παραδείγματα για το 'C++ Modulus Operator'.

Παράδειγμα #01
Στο πρώτο παράδειγμα, θα εξοικειωθούμε με τη σύνταξη του τελεστή modulus και θα λύσουμε ένα απλό παράδειγμα του τελεστή Modulus. Για το σκοπό αυτό, θα εφαρμόσουμε τον τελεστή συντελεστή και στο μέρισμα και στο διαιρέτη που έχουν τους ίδιους τύπους δεδομένων, δηλαδή ακέραιο 'int'. Θα ορίσουμε τις δύο μεταβλητές, ας πούμε x & y ως ακέραιους. Στη συνέχεια, θα εκχωρήσουμε κάποια τυχαία τιμή σε αυτούς τους ακέραιους αριθμούς. Μετά την εκχώρηση της τιμής, θα εφαρμόσουμε τον τελεστή συντελεστή σε αυτές τις δύο τιμές ως «διαιρέτης % μερίσματος» και θα το αποθηκεύσουμε σε κάποια άλλη μεταβλητή. Στη συνέχεια, θα εμφανίσουμε αυτήν τη μεταβλητή χρησιμοποιώντας τη λειτουργία εκτύπωσης.









Παραγωγή:



Το υπόλοιπο στην έξοδο έχει επιστρέψει τιμή ίση με μηδέν. Αυτό σημαίνει ότι το x διαιρείται πλήρως με το y. Επομένως, x είναι ο παράγοντας του y.





Παράδειγμα #02
Σε αυτό το δεύτερο παράδειγμα, θα μάθουμε πώς μπορούμε να χρησιμοποιήσουμε τον τελεστή modulus στην αλυσίδα για να υπολογίσουμε το modulus περισσότερων από δύο μεταβλητών. Αρχικά, θα ορίσουμε τον τύπο δεδομένων των μεταβλητών. Σε αυτή την περίπτωση, θα πάρουμε τρεις μεταβλητές και θα υπολογίσουμε το συντελεστή αλυσίδας τους. Επιλέξτε τρεις μεταβλητές τυχαία, π.χ., x, y, z με τους ίδιους τύπους δεδομένων με τους ακέραιους και αρχικοποιήστε τις εκχωρώντας τις διαφορετικές τιμές σε κάθε μεταβλητή. Στη συνέχεια, εφαρμόστε τον τελεστή συντελεστή σε αυτές τις τρεις μεταβλητές ως 'x% y% z'. Εμφανίστε το χρησιμοποιώντας 'cout <<'. Αυτό μπορεί να γίνει εκτελώντας τον ακόλουθο κώδικα στον επεξεργαστή κώδικα:



Παραγωγή:

Ο συντελεστής x % y δηλαδή 13 % 5 βγήκε 3 και ο συντελεστής (x % y) % z δηλ. (3) % 2 είναι 1. Αυτός είναι ο λόγος για τον οποίο η έξοδος μας βγήκε ακριβώς ίση με ένα.

Παράδειγμα #03
Έχουμε εφαρμόσει το modulus στη μεταβλητή με τους ίδιους τύπους δεδομένων ή τους τύπους δεδομένων των οποίων ο συνδυασμός είναι εντάξει με τον τελεστή modulus. Σε αυτό το παράδειγμα, θα μάθουμε τους περιορισμούς της λειτουργίας του τελεστή modulus. Ο τελεστής modulus δεν λειτουργεί στους τύπους δεδομένων, float και double. Για επαλήθευση, ας δοκιμάσουμε ένα παράδειγμα όπου θα ορίσουμε τις δύο μεταβλητές με float τύπου δεδομένων και θα εφαρμόσουμε το συντελεστή σε αυτές. Τα αποτελέσματα φαίνονται στην ακόλουθη έξοδο.

Στο παράδειγμα όταν χρησιμοποιήσαμε το float ως τύπο δεδομένων των δύο μεταβλητών «a» και «b» και τους αποδώσαμε τις κινητήριες τιμές π.χ. 13,4 και 5,5 αντίστοιχα. Ο τελεστής modulus δεν είχε καλή απόδοση σε αυτές τις δύο μεταβλητές και είχε σφάλματα μεταγλώττισης που υποδεικνύουν τον τύπο δεδομένων float.

Παράδειγμα #04
Με τη βοήθεια του τελεστή συντελεστή, μπορούμε επίσης να μάθουμε αν ο αριθμός είναι άρτιος ή μονός. Μπορούμε να χρησιμοποιήσουμε αυτή τη λειτουργία σε εφαρμογές όπου θέλουμε να ελέγξουμε ορισμένες περιττές και ζυγές τιμές. Για να βρούμε τον ζυγό αριθμό, παίρνουμε απλώς το συντελεστή μέτρησης αυτού του αριθμού με το 2. Εάν το υπόλοιπο είναι 1 ή οποιοσδήποτε αριθμός διαφορετικός από το 0, ο αριθμός είναι περιττός, αντίθετα. Αν το υπόλοιπο βγει 0, ο αριθμός είναι ζυγός. Προσπαθήσαμε να εφαρμόσουμε αυτήν την ιδέα με τον κώδικα που δίνεται παρακάτω:

Παραγωγή:

Στον ακέραιο 'a' αποδόθηκε η τιμή 4 και λαμβάνοντας το μέτρο του με 2. Το υπόλοιπο είχε ως αποτέλεσμα μηδέν που σημαίνει ότι το 'a' είναι ζυγός αριθμός.

Παράδειγμα #05
Αυτό το παράδειγμα θα δείξει πώς μπορούμε να χρησιμοποιήσουμε τον τελεστή modulus operator mode εάν θέλουμε να δημιουργήσουμε κάποιους ακέραιους αριθμούς που είναι μικρότεροι από τη συγκεκριμένη τιμή ή ακέραιο. Θα χρησιμοποιήσουμε τη συνάρτηση rand της οποίας η τιμή θα χρησιμοποιηθεί στη συνέχεια από τον τελεστή συντελεστή για να γίνει σύζευξη με το επιθυμητό ανώτερο όριο της καθορισμένης μέγιστης τιμής. Αρχικά, θα εισαγάγουμε όλες τις σημαντικές βιβλιοθήκες ως:

$ #include
$ #include <διάνυσμα>
$ #include

Χρησιμοποιώντας το namespace std, θα εισάγουμε vector, endl (στο τέλος δήλωση), cout (για εμφάνιση) και cin. Μετά από αυτό το βήμα, θα ορίσουμε το μέγιστο όριο, το οποίο σε αυτό το παράδειγμα είναι 1000. Στη συνέχεια, θα ορίσουμε πόσους αριθμούς θέλουμε να δημιουργήσουμε που θα είναι ίσοι με 10. Κατά κύριο λόγο, θα εκτελέσουμε τον δείκτη μέχρι το μέγιστο περιορίσει και θα δημιουργήσει τους αριθμούς χρησιμοποιώντας τη συνάρτηση rand ζευγαρώνοντας την επιστρεφόμενη τιμή της με το μέτρο του μέγιστου ορίου και θα εμφανίσει την έξοδο.

Παραγωγή:

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

συμπέρασμα

Με τη βοήθεια αυτού του οδηγού, μπορούμε να μάθουμε τι ακριβώς είναι ο τελεστής modulus, ποια είναι η σύνταξή του και πώς μπορούμε να βρούμε τη χρήση του τελεστή modulus σε διάφορες εφαρμογές. Έχουμε λύσει διαφορετικά παραδείγματα που σχετίζονται με διαφορετικές χρήσεις του τελεστή modulus σε εφαρμογές C++. Επιπλέον, μάθαμε και για τους περιορισμούς του τελεστή συντελεστή.