Πρόγραμμα C ++ για ανταλλαγή δύο αριθμών

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

Παράδειγμα 1: Ανταλλαγή αριθμών (Χρήση προσωρινής μεταβλητής)

 #include using namespace std; int main() ( int a = 5, b = 10, temp; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; temp = a; a = b; b = temp; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Παραγωγή

Πριν από την ανταλλαγή. a = 5, b = 10 Μετά την ανταλλαγή. a = 10, b = 5

Για να πραγματοποιήσετε εναλλαγή στο παραπάνω παράδειγμα, χρησιμοποιούνται τρεις μεταβλητές.

Τα περιεχόμενα της πρώτης μεταβλητής αντιγράφονται στη μεταβλητή temp. Στη συνέχεια, τα περιεχόμενα της δεύτερης μεταβλητής αντιγράφονται στην πρώτη μεταβλητή.

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

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

Παράδειγμα 2: Ανταλλαγή αριθμών χωρίς χρήση προσωρινών μεταβλητών

 #include using namespace std; int main() ( int a = 5, b = 10; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; a = a + b; b = a - b; a = a - b; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Το αποτέλεσμα αυτού του προγράμματος είναι το ίδιο με το πρώτο πρόγραμμα παραπάνω.

Ας δούμε πώς λειτουργεί αυτό το πρόγραμμα:

  1. Αρχικά, a = 5και b = 10.
  2. Στη συνέχεια, προσθέτουμε a και b και το αποθηκεύουμε στο a με τον κωδικό a = a + b. Αυτό σημαίνει a = 5 + 10. Λοιπόν, a = 15τώρα.
  3. Στη συνέχεια χρησιμοποιούμε τον κωδικό b = a - b. Αυτό σημαίνει b = 15 - 10. Λοιπόν, b = 5τώρα.
  4. Και πάλι, χρησιμοποιούμε τον κωδικό a = a - b. Αυτό σημαίνει a = 15 - 5. Έτσι, τελικά, a = 10.

Ως εκ τούτου, οι αριθμοί έχουν αλλάξει.

Σημείωση: Μπορούμε να χρησιμοποιήσουμε πολλαπλασιασμό και διαίρεση αντί για προσθήκη και αφαίρεση. Ωστόσο, αυτό δεν θα λειτουργήσει εάν ένας από τους αριθμούς είναι 0.

 int a = 5, b = 10; // using multiplication and division for swapping a = a * b; // a = 50 b = a / b; // b = 5 a = a / b; // a = 10 

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