Αντιστροφή συμβολοσειράς σε C++

Antistrophe Symboloseiras Se C



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

Τεχνικές αντιστροφής συμβολοσειράς στον προγραμματισμό C++

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

  • Χρησιμοποιώντας τη μέθοδο 'reverse()'.
  • Χρησιμοποιώντας τη μέθοδο 'strrev()'.
  • Χρησιμοποιώντας τον βρόχο «για».
  • Χρησιμοποιώντας τον βρόχο 'while'.
  • Χρησιμοποιώντας τον κατασκευαστή

Παράδειγμα 1:

Αρχικά, εισάγουμε τρία διαφορετικά αρχεία κεφαλίδας τα οποία είναι 'αλγόριθμος', 'iostream' και 'string'. Πρέπει να συμπεριλάβουμε αυτά τα αρχεία κεφαλίδας, ώστε να χρησιμοποιήσουμε τις συναρτήσεις που ορίζονται σε αυτά. Το αρχείο κεφαλίδας «αλγόριθμος» περιλαμβάνει πολυάριθμες ενσωματωμένες λειτουργίες για εύρεση, ταξινόμηση, καταμέτρηση, τροποποίηση κ.λπ. που είναι διαθέσιμες σε εμάς.







Στη συνέχεια, το 'iostream' παρέχει λειτουργίες για την εισαγωγή ή την έξοδο των δεδομένων και περιλαμβάνεται το αρχείο κεφαλίδας 'string', καθώς παρέχει τις λειτουργίες που απαιτούνται κατά την εργασία με τα δεδομένα συμβολοσειράς. Κάτω από αυτά τα αρχεία κεφαλίδας, προσθέτουμε τον χώρο ονομάτων 'std'. Εδώ, καλούμε τη συνάρτηση 'main()'.



Στη συνέχεια, τοποθετούμε τον τύπο δεδομένων 'string' και αρχικοποιούμε το 'originalStr' εδώ με κάποια δεδομένα συμβολοσειράς. Στη συνέχεια, εκτυπώνουμε αυτή τη συμβολοσειρά. Μετά από αυτό, χρησιμοποιούμε τη μέθοδο 'reverse()' που βοηθά στην αντιστροφή της συμβολοσειράς. Σε αυτήν τη μέθοδο 'reverse()', προσθέτουμε τα 'begin()' και 'end()' μαζί με τη μεταβλητή 'originalStr'. Τώρα, εκτυπώνουμε επίσης αυτήν την αντίστροφη συμβολοσειρά που λαμβάνουμε μετά την εφαρμογή της μεθόδου 'reverse()'.



Κωδικός 1:





#include <αλγόριθμος>
#include
#include
χρησιμοποιώντας χώρο ονομάτων std ;
ενθ κύριος ( )
{
συμβολοσειρά originalStr = 'Αντίστροφη συμβολοσειρά στον προγραμματισμό C++' ;
cout << 'Η αρχική χορδή!' << endl ;
cout << originalStr << endl << endl ;
ΑΝΤΙΣΤΡΟΦΗ ( originalStr. αρχίζουν ( ) , originalStr. τέλος ( ) ) ;
cout << 'Η ανάποδη χορδή!' << endl ;
cout << originalStr ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}

Παραγωγή:
Η αντίστροφη συμβολοσειρά που λαμβάνουμε μετά την εφαρμογή της μεθόδου 'reverse()' στον κώδικά μας αποδίδεται τώρα μαζί με την αρχική συμβολοσειρά.



Παράδειγμα 2:

Συμπεριλαμβάνουμε πρώτα τα αρχεία κεφαλίδας και μετά τοποθετούμε το 'namespace std'. Στη συνέχεια, στη μέθοδο 'main()' αρχικοποιούμε τον πίνακα χαρακτήρων τοποθετώντας τον τύπο δεδομένων 'char' με το όνομα της μεταβλητής 'Org_str' και πληκτρολογούμε εδώ τη συμβολοσειρά που θέλουμε να αντιστρέψουμε. Στη συνέχεια, αποδίδουμε αυτό το 'Org_str' με τη βοήθεια του 'cout'.

Κάτω από αυτό, χρησιμοποιούμε τη μέθοδο 'strrev()' για να αντιστρέψουμε τη συμβολοσειρά και να περάσουμε το 'Org_str' ως παράμετρο σε αυτήν τη συνάρτηση. Τώρα, η συμβολοσειρά έχει αντιστραφεί εδώ. Μετά από αυτό, αποδίδουμε επίσης την αντίστροφη συμβολοσειρά με τη βοήθεια του 'cout'.

Κωδικός 2:

#include
#include
χρησιμοποιώντας χώρο ονομάτων std ;
ενθ κύριος ( )
{
απανθρακώνω Org_str [ ] = 'Πρόγραμμα Αντίστροφης Χορδής' ;
cout << Org_str << endl << endl ;
strrev ( Org_str ) ;
cout << 'Αντίστροφη χορδή' << endl ;
cout << Org_str ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}

Παραγωγή:
Εδώ, αποδίδονται οι αρχικές και οι αντίστροφες συμβολοσειρές που λάβαμε χρησιμοποιώντας τη μέθοδο 'strrev()' στον κώδικά μας.

Παράδειγμα 3:

Σε αυτήν την περίπτωση, τα αρχεία κεφαλίδας περιλαμβάνονται πριν από την προσθήκη του 'namespace std'. Στη συνέχεια, καλείται η 'main()' και η μεταβλητή συμβολοσειράς προστίθεται με το όνομα 'myOrgStr' και αρχικοποιείται με τα δεδομένα συμβολοσειράς.

Μετά από αυτό, δηλώνουμε επίσης τη μεταβλητή 'int' 'a' και αποδίδουμε τη συμβολοσειρά 'myOrgStr' χρησιμοποιώντας το 'cout'. Κάτω από αυτό, χρησιμοποιούμε τον βρόχο 'for' όπου αρχικοποιούμε τη μεταβλητή 'a' με 'myOrgStr.length() – 1' και στη συνέχεια τοποθετούμε μια συνθήκη που είναι 'a >= 0' και τη μειώνουμε στην τιμή 'a '. Αυτό αντιστρέφει τη συμβολοσειρά μας και την αποθηκεύει στο 'myOrgStr[a]' και επίσης την εμφανίζει καθώς τοποθετούμε το 'myOrgStr[a]' μέσα στο 'cout'.

Κωδικός 3:

#include
#include
χρησιμοποιώντας χώρο ονομάτων std ;
ενθ κύριος ( )
{
συμβολοσειρά myOrgStr = 'Γειά σου Κόσμε!' ;
ενθ ένα ;
cout << myOrgStr << endl << endl ;
cout << 'Αντίστροφη χορδή' <= 0 ; ένα -- )
{
cout << myOrgStr [ ένα ] ;
}
ΕΠΙΣΤΡΟΦΗ 0 ;
}

Παραγωγή:
Αυτό αποδίδει τόσο τις αρχικές όσο και τις αντίστροφες συμβολοσειρές που λάβαμε μέσω του κώδικά μας χρησιμοποιώντας τη μέθοδο βρόχου 'for'.

Παράδειγμα 4:

Εδώ, εισάγουμε το αρχείο κεφαλίδας 'bits/stdc++.h', ώστε να μην χρειάζεται να εισάγουμε τα άλλα αρχεία κεφαλίδας, καθώς αυτό το αρχείο κεφαλίδας περιέχει όλους τους ορισμούς της συνάρτησης. Στη συνέχεια, πληκτρολογούμε το 'namespace std'. Εδώ, δημιουργούμε μια συνάρτηση με το όνομα “Rev()” στην οποία περνάμε το “string& myString” ως όρισμα αυτής της συνάρτησης. Δημιουργούμε αυτήν τη συνάρτηση εδώ για να αντιστρέψουμε τη συμβολοσειρά.

Σε αυτή τη συνάρτηση, τοποθετούμε τη μεταβλητή «S_len» του τύπου δεδομένων «int» και την αρχικοποιούμε με τη συνάρτηση «length()» τοποθετώντας το «myString» με αυτήν. Στη συνέχεια, έχουμε μια άλλη μεταβλητή που είναι 'no' τύπου δεδομένων 'int' και την αρχικοποιούμε με 'S_len-1'.

Κάτω από αυτό, αρχικοποιείται μια ακόμη μεταβλητή που ονομάζεται 'a' του τύπου δεδομένων 'int'. Εδώ, χρησιμοποιούμε τον βρόχο 'while()' και προσθέτουμε 'a <= όχι' ως συνθήκη. Στη συνέχεια, χρησιμοποιούμε τη μέθοδο «swap()». Αυτή η μέθοδος 'swap()' βοηθά στην εναλλαγή των δεδομένων συμβολοσειράς και στη συνέχεια αρχικοποιεί το 'no' με το 'no -1'. Αρχικοποιούμε επίσης το 'a' με 'a+1'.

Στη συνέχεια, καλούμε την 'main()' εδώ στην οποία αρχικοποιούμε τη μεταβλητή 'myString' με τα δεδομένα συμβολοσειράς και εκτυπώνουμε αυτήν τη συμβολοσειρά. Μετά από αυτό, καλούμε τη συνάρτηση 'Rev()' που δημιουργήσαμε σε αυτόν τον κώδικα και βάζουμε το 'myString' ως παράμετρο αυτής της συνάρτησης που αντιστρέφει τη συμβολοσειρά και στη συνέχεια εμφανίζει την αντίστροφη συμβολοσειρά.

Κωδικός 4:

#include
χρησιμοποιώντας χώρο ονομάτων std ;
κενός Στροφή μηχανής ( σειρά & myString )
{
ενθ S_len = myString. μήκος ( ) ;
ενθ Οχι = S_len - 1 ;
ενθ ένα = 0 ;
ενώ ( ένα <= Οχι ) {
ανταλαγή ( myString [ ένα ] ,myString [ Οχι ] ) ;
Οχι = Οχι - 1 ;
ένα = ένα + 1 ;
}

}
ενθ κύριος ( )
{
συμβολοσειρά myString = 'Λατρεύω τον Προγραμματισμό' ;
cout << myString << endl ;
cout << ' \n Αντίστροφη χορδή' << endl ;
Στροφή μηχανής ( myString ) ;
cout << myString ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}

Παραγωγή:
Εδώ, παρουσιάζουμε τόσο την αρχική συμβολοσειρά όσο και την αντίστροφη συμβολοσειρά που πήραμε χρησιμοποιώντας τον βρόχο “while()” και τη μέθοδο “swap()” μέσα στη συνάρτηση που δημιουργήσαμε στον κώδικά μας.

Παράδειγμα 5:

Εισάγουμε το αρχείο κεφαλίδας “bits/stdc++.h” με όλους τους ορισμούς συναρτήσεων. Επομένως, δεν χρειάζεται να εισάγουμε άλλα αρχεία κεφαλίδας. Στη συνέχεια, εισάγουμε το 'namespace std' και καλούμε το 'main()' εδώ. Στη συνέχεια, έχουμε μια μεταβλητή 'data' του τύπου δεδομένων 'string' και την αρχικοποιούμε με τη συμβολοσειρά που θέλουμε να αντιστρέψουμε.

Αποδίδουμε αυτήν την αρχική συμβολοσειρά πριν την αντιστρέψουμε τοποθετώντας τη μεταβλητή 'data' στο 'cout'. Κάτω από αυτό, αρχικοποιούμε μια άλλη μεταβλητή που είναι 'revStr' του ίδιου τύπου δεδομένων 'string'. Στη συνέχεια, χρησιμοποιούμε τα “rbegin()” και “rend()” που είναι οι αντίστροφοι επαναλήπτες που προσθέτουμε για την αντιστροφή της συμβολοσειράς εδώ. Η αντίστροφη συμβολοσειρά αποθηκεύεται τώρα στη μεταβλητή 'revStr' που τοποθετείται στο 'cout' για να εκτυπωθεί η αντίστροφη συμβολοσειρά εδώ.

Κωδικός 5:

#περιλαμβάνω
χρησιμοποιώντας χώρο ονομάτων std ;
ενθ κύριος ( )
{
δεδομένα συμβολοσειράς = 'Η C++ είναι η καλύτερη γλώσσα προγραμματισμού' ;
cout << δεδομένα << endl << endl ;
συμβολοσειρά revStr = σειρά ( δεδομένα. rbegin ( ) , δεδομένα. κάνει ( ) ) ;

cout << revStr << endl ;
ΕΠΙΣΤΡΟΦΗ 0 ;
}

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

συμπέρασμα

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