Zwei Zahlen ohne temporäre Variable tauschen

C++C++Beginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Zwei Zahlen tauschen bedeutet, dass ihre Werte vertauscht werden sollen, d.h. der ursprüngliche Wert der ersten Zahl sollte jetzt der sein, was die zweite Zahl war, und umgekehrt. In diesem Lab werden wir zwei Wege lernen, um zwei Zahlen ohne Verwendung einer dritten Variable zu tauschen:


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("C++")) -.-> cpp/BasicsGroup(["Basics"]) cpp(("C++")) -.-> cpp/FunctionsGroup(["Functions"]) cpp(("C++")) -.-> cpp/AdvancedConceptsGroup(["Advanced Concepts"]) cpp(("C++")) -.-> cpp/IOandFileHandlingGroup(["I/O and File Handling"]) cpp(("C++")) -.-> cpp/SyntaxandStyleGroup(["Syntax and Style"]) cpp/BasicsGroup -.-> cpp/variables("Variables") cpp/BasicsGroup -.-> cpp/operators("Operators") cpp/FunctionsGroup -.-> cpp/function_parameters("Function Parameters") cpp/AdvancedConceptsGroup -.-> cpp/references("References") cpp/IOandFileHandlingGroup -.-> cpp/output("Output") cpp/IOandFileHandlingGroup -.-> cpp/user_input("User Input") cpp/IOandFileHandlingGroup -.-> cpp/files("Files") cpp/SyntaxandStyleGroup -.-> cpp/code_formatting("Code Formatting") subgraph Lab Skills cpp/variables -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/operators -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/function_parameters -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/references -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/output -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/user_input -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/files -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} cpp/code_formatting -.-> lab-96217{{"Zwei Zahlen ohne temporäre Variable tauschen"}} end

Erstellen einer neuen C++-Datei

Öffnen Sie Ihren Terminal und navigieren Sie mit dem Befehl zum Projektverzeichnis:

cd ~/project

Erstellen Sie eine neue C++-Datei namens swap.cpp mit dem Befehl:

touch swap.cpp

Öffnen Sie swap.cpp in Ihrem bevorzugten Code-Editor.

Schreiben des Codes zum Tauschen von zwei Zahlen mit den Operatoren + und -

In diesem Schritt werden wir den Code zum Tauschen von zwei Zahlen mit den Operatoren + und - schreiben. Der Code sollte zwei Zahlen vom Benutzer entgegennehmen und sie ohne Verwendung einer dritten Variable tauschen.

// swap.cpp
#include <iostream>
using namespace std;

void swap_numbers(int &x, int &y) {
    x = x + y;
    y = x - y;
    x = x - y;
}

int main() {
    int a, b;
    cout << "Geben Sie den Wert von a ein: ";
    cin >> a;
    cout << "Geben Sie den Wert von b ein: ";
    cin >> b;

    cout << "Vor dem Tauschen: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    swap_numbers(a, b);

    cout << "Nach dem Tauschen: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    return 0;
}

In diesem Code haben wir eine Funktion swap_numbers erstellt, die zwei ganzzahlige Argumente entgegennimmt und die Tauschoperation ausführt. Wir nehmen zwei Zahlen a und b vom Benutzer entgegen und rufen die Funktion swap_numbers auf, die ihre Werte tauscht. Schließlich drucken wir die getauschten Werte von a und b aus.

Um das Programm auszuführen, verwenden Sie den Befehl:

g++ swap.cpp -o swap &&./swap

Schreiben des Codes zum Tauschen von zwei Zahlen mit den Operatoren * und /

In diesem Schritt werden wir den Code zum Tauschen von zwei Zahlen mit den Operatoren * und / schreiben. Der Code sollte zwei Zahlen vom Benutzer entgegennehmen und sie ohne Verwendung einer dritten Variable tauschen.

// swap.cpp
#include <iostream>
using namespace std;

void swap_numbers(int &x, int &y) {
    x = x * y;
    y = x / y;
    x = x / y;
}

int main() {
    int a, b;
    cout << "Geben Sie den Wert von a ein: ";
    cin >> a;
    cout << "Geben Sie den Wert von b ein: ";
    cin >> b;

    cout << "Vor dem Tauschen: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    swap_numbers(a, b);

    cout << "Nach dem Tauschen: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    return 0;
 }

Auch in diesem Code haben wir eine Funktion swap_numbers erstellt, die zwei ganzzahlige Argumente entgegennimmt und die Tauschoperation ausführt. Wir nehmen zwei Zahlen a und b vom Benutzer entgegen und rufen die Funktion swap_numbers auf, die ihre Werte tauscht. Schließlich drucken wir die getauschten Werte von a und b aus. Bei dieser Methode des Tauschens verwenden wir Multiplikations- und Divisionsoperationen anstelle von Addition und Subtraktion.

Um das Programm auszuführen, verwenden Sie den Befehl:

g++ swap.cpp -o swap &&./swap

Endprogramm

Hier ist der vollständige Code für das swap.cpp-Programm, das zwei Zahlen sowohl mit der Additions-Subtraktions- als auch mit der Multiplikations-Divisions-Methode tauscht.

// swap.cpp
#include <iostream>
using namespace std;

void add_subtract_swap(int &x, int &y) {
    x = x + y;
    y = x - y;
    x = x - y;
}

void multiply_divide_swap(int &x, int &y) {
    x = x * y;
    y = x / y;
    x = x / y;
}

int main() {
    int a, b;
    cout << "Geben Sie den Wert von a ein: ";
    cin >> a;
    cout << "Geben Sie den Wert von b ein: ";
    cin >> b;

    cout << "Vor dem Tauschen: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    add_subtract_swap(a, b);

    cout << "Nach dem Tauschen mit den Operatoren + und -: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    multiply_divide_swap(a, b);

    cout << "Nach dem Tauschen mit den Operatoren * und /: " << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;

    return 0;
}

Kompilieren und Ausführen

Um das Programm zu kompilieren und auszuführen, verwenden Sie den Befehl:

g++ swap.cpp -o swap &&./swap

Das Programm wird den Benutzer nach zwei Zahlen fragen, die es sowohl auf Additions-Subtraktions- als auch auf Multiplikations-Divisions-Weg tauschen wird. Die Ausgabe wird die Anfangswerte von a und b, die getauschten Werte mittels Additions-Subtraktion und die getauschten Werte mittels Multiplikations-Division anzeigen.

Zusammenfassung

Das Tauschen ist eine wichtige Operation in der Programmierung und wird in vielen Algorithmen häufig benötigt. In diesem Lab haben wir zwei Wege gelernt, um zwei Zahlen ohne Verwendung einer dritten Variable zu tauschen: mit Additions-Subtraktion und mit Multiplikations-Division. Wir haben auch gelernt, wie man Funktionen zum Ausführen der Tauschoperation erstellt, was unseren Code modularer und lesbarer macht.