Twee variabelen verwisselen in C++, Python en JavaScript

Twee variabelen verwisselen in C++, Python en JavaScript

Als programmeur heb je waarschijnlijk te maken gehad met een situatie waarin je twee nummers moet verwisselen. Het verwisselen van twee nummers is een van de meest voorkomende situaties waarmee programmeurs worden geconfronteerd tijdens het coderen.





U kunt twee getallen omwisselen met een tijdelijke variabele of door rekenkundige en bitsgewijze bewerkingen te gebruiken. In dit artikel leer je over verschillende methoden waarmee je twee getallen kunt verwisselen.





Twee nummers verwisselen met een tijdelijke variabele

Het gebruik van een tijdelijke variabele is de eenvoudigste manier om twee getallen om te wisselen. Volg deze drie eenvoudige stappen:





Stap 1 : Wijs de waarde van de 1e variabele toe aan een tijdelijke variabele.

Stap 2 : Wijs de waarde van de 2e variabele toe aan de 1e variabele.



Stap 3 : Wijs de waarde van de tijdelijke variabele toe aan de 2e variabele.

Bijvoorbeeld:





Laat num1 = 80 en num2 = 50 (vóór het wisselen).

Na stap 1 : num1 = 80, num2 = 50 en temp = 80.





Na stap 2 : num1 = 50, num2 = 50 en temp = 80.

Na stap 3 : num1 = 50, num2 = 80 en temp = 80.

Dus num1 is gelijk aan 50 en num2 is gelijk aan 80 na het omwisselen.

C++-implementatie om twee getallen te verwisselen met een tijdelijke variabele

Hieronder staat de C++-implementatie om twee getallen om te wisselen met een tijdelijke variabele:

#include
using namespace std;
// Function to swap two numbers
// using a temporary variable
void swapNums(int num1, int num2)
{
// Printing numbers before swapping
cout << 'Before Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
// Swapping with the help of a
// temporary variable 'temp'
int temp = num1;
num1 = num2;
num2 = temp;
// Printing numbers after swapping
cout << 'After Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
}
// Driver Code
int main()
{
swapNums(80, 50);
return 0;
}

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Python-implementatie om twee nummers te verwisselen met behulp van een tijdelijke variabele

Hieronder staat de Python-implementatie om twee getallen om te wisselen met behulp van een tijdelijke variabele:

beste gratis muziek-app voor Android
# Function to swap two numbers
# using a temporary variable
def swapNums(num1, num2):
# Printing numbers before swapping
print('Before Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)
# Swapping with the help of a
# temporary variable 'temp'
temp = num1
num1 = num2
num2 = temp
# Printing numbers after swapping
print('After Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)

# Driver Code
swapNums(80, 50)

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

JavaScript-implementatie om twee nummers te wisselen met behulp van een tijdelijke variabele

Hieronder is de JavaScript implementatie om twee getallen om te wisselen met een tijdelijke variabele:


// Function to swap two numbers
// using a temporary variable
function swapNums(num1, num2) {
// Printing numbers before swapping
document.write('Before Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
// Swapping with the help of a
// temporary variable 'temp'
let temp = num1;
num1 = num2;
num2 = temp;
// Printing numbers after swapping
document.write('After Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
}
// Driver Code
swapNums(80, 50);

Uitgang:

hoe stoomgames naar tv te streamen
Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Twee getallen verwisselen met rekenkundige operatoren (optellen en aftrekken)

Zoek eerst de som van twee getallen. Vervolgens kunt u de vereiste getallen krijgen door de som te gebruiken en van de som af te trekken.

C++-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken)

Hieronder staat de C++-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken):

#include
using namespace std;
// Function to swap two numbers
// using arithmetic operators (+, -)
void swapNums(int num1, int num2)
{
// Printing numbers before swapping
cout << 'Before Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
// Swapping with the help of
// artithmetic operators (+, -)
num1 = num1 + num2;
num2 = num1 - num2;
num1 = num1 - num2;
// Printing numbers after swapping
cout << 'After Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
}
// Driver Code
int main()
{
swapNums(80, 50);
return 0;
}

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Python-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken)

Hieronder staat de Python-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken):

# Function to swap two numbers
# using arithmetic operators (+, -)
def swapNums(num1, num2):
# Printing numbers before swapping
print('Before Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)
# Swapping with the help of
# arithmetic operators (+, -)
num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2
# Printing numbers after swapping
print('After Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)

# Driver Code
swapNums(80, 50)

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

JavaScript-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken)

Hieronder staat de JavaScript-implementatie om twee getallen om te wisselen met behulp van rekenkundige operatoren (optellen en aftrekken):


// Function to swap two numbers
// using arithmetic operators (+, -)
function swapNums(num1, num2) {
// Printing numbers before swapping
document.write('Before Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
// Swapping with the help of
// using arithmetic operators (+, -)
num1 = num1 + num2;
num2 = num1 - num2;
num1 = num1 - num2;
// Printing numbers after swapping
document.write('After Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
}
// Driver Code
swapNums(80, 50);

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Twee getallen verwisselen met rekenkundige operatoren (vermenigvuldigen en delen)

U kunt twee getallen verwisselen met vermenigvuldigen en delen in drie eenvoudige stappen:

Stap 1 : num1 = num1 * num2

Stap 2 : num2 = num1 /num2

Stap 3 : num1 = num1 / num2

Waarden van num1 en num2 zijn verwisseld.

Dit is geen voorkeursmethode om twee getallen om te wisselen, want als een van beide getallen 0 is, zal het product van deze twee getallen ook 0 zijn. Bovendien, als het 2e getal 0 is, geven compilers een fout door deling door nul. U moet deze benadering dus vermijden om twee nummers te verwisselen.

Twee nummers verwisselen met behulp van Bitwise-operators

De bitsgewijze XOR-operator wordt gebruikt om twee getallen om te wisselen.

C++-implementatie om twee nummers te verwisselen met behulp van bitsgewijze operators

Hieronder staat de C++-implementatie om twee getallen om te wisselen met behulp van XOR-operators:

#include
using namespace std;
// Function to swap two numbers
// using XOR operator
void swapNums(int num1, int num2)
{
// Printing numbers before swapping
cout << 'Before Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
// Swapping with the help of
// XOR operator
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
// Printing numbers after swapping
cout << 'After Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
}
// Driver Code
int main()
{
swapNums(80, 50);
return 0;
}

Uitgang:

Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Python-implementatie om twee nummers te verwisselen met behulp van bitsgewijze operators

Hieronder staat de Python-implementatie om twee getallen om te wisselen met behulp van XOR-operators:

Verwant: Hoe te schrijven of af te drukken naar een bestand in Python

# Function to swap two numbers
# using XOR operator
def swapNums(num1, num2):
# Printing numbers before swapping
print('Before Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)
# Swapping with the help of
# XOR operator
num1 = num1 ^ num2
num2 = num1 ^ num2
num1 = num1 ^ num2
# Printing numbers after swapping
print('After Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)

# Driver Code
swapNums(80, 50)

Uitgang:

Before Swapping:
num1: 80 , num2: 50
After Swapping:
num1: 50 , num2: 80

JavaScript-implementatie om twee nummers te wisselen met behulp van bitsgewijze operators

Hieronder staat de JavaScript-implementatie om twee getallen om te wisselen met behulp van XOR-operators:


// Function to swap two numbers
// using XOR operator
function swapNums(num1, num2) {
// Printing numbers before swapping
document.write('Before Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
// Swapping with the help of
// using XOR operator
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
// Printing numbers after swapping
document.write('After Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
}
// Driver Code
swapNums(80, 50);

Uitgang:

Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

Eénregelige oplossing om twee nummers te wisselen in C++, Python en JavaScript

U kunt ook twee nummers op één regel omwisselen zonder bibliotheekfuncties te gebruiken.

C++-implementatie voor éénlijnsoplossing

#include
using namespace std;
int main()
{
int num1 = 80, num2 = 50;
cout << 'Before Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
// One line solution to swap two numbers
num1 = num1 ^ num2, num2 = num1 ^ num2, num1 = num1 ^ num2;
cout << 'After Swapping: ' << endl;
cout << 'num1 = ' << num1 << ', num2 = ' << num2 << endl;
return 0;
}

Uitgang:

Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

Python-implementatie voor éénlijnsoplossing

num1 = 80
num2 = 50
print('Before Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)
# One line solution to swap two numbers
num1, num2 = num2, num1
print('After Swapping:')
print('num1: ' , num1 , ', num2: ' , num2)

Uitgang:

xbox one gaat steeds vanzelf aan
Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

JavaScript-implementatie voor éénlijnsoplossing


let num1 = 80, num2 = 50;
document.write('Before Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');
// One line solution to swap two numbers
(num1 ^= num2), (num2 ^= num1), (num1 ^= num2);
document.write('After Swapping:
');
document.write('num1: ' + num1 + ', num2: ' + num2 + '
');

Uitgang:

Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

Gerelateerd: 10 basisprogrammeerprincipes die elke programmeur moet kennen

Als je de volledige broncode wilt bekijken die in dit artikel wordt gebruikt, is hier de: GitHub-opslagplaats .

Verbeter uw programmeergewoonten

Als u uw programmeergewoonten wilt verbeteren, moet u bepaalde programmeerprincipes volgen, zoals KISS (Keep It Simple, Stupid), Dry Code, YAGNI (You Are't Going to Need It), enz. Maar toch, als u een aantal gemeenschappelijke codeerfouten, moet u op de hoogte zijn van de meest voorkomende codeerfouten. De kennis zal u helpen veelvoorkomende valkuilen te vermijden en uw code zinvol te houden.

Deel Deel Tweeten E-mail 10 meest voorkomende programmeer- en codeerfouten

Codeerfouten kunnen tot zoveel problemen leiden. Deze tips helpen u programmeerfouten te voorkomen en uw code zinvol te houden.

Lees volgende
Gerelateerde onderwerpen
  • Programmeren
  • JavaScript
  • Programmeren
  • Python
Over de auteur Yuvraj Chandra(60 artikelen gepubliceerd)

Yuvraj is een student Computerwetenschappen aan de Universiteit van Delhi, India. Hij is gepassioneerd door Full Stack Web Development. Als hij niet aan het schrijven is, onderzoekt hij de diepte van verschillende technologieën.

Meer van Yuvraj Chandra

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren