Com intercanviar dues variables en C ++, Python i JavaScript

Com intercanviar dues variables en C ++, Python i JavaScript

Com a programador, és probable que hàgiu afrontat una situació que requereixi intercanviar dos números. Intercanviar dos números és una de les situacions més habituals als quals es troben els programadors mentre codifiquen.



Podeu canviar dos números mitjançant una variable temporal o mitjançant operacions aritmètiques i de bits. En aquest article, coneixereu diversos mètodes que us permeten canviar dos números.



Com intercanviar dos números mitjançant una variable temporal

L’ús d’una variable temporal és la manera més senzilla d’intercanviar dos números. Seguiu aquests tres senzills passos:





Pas 1 : Assigneu el valor de la primera variable a una variable temporal.

Pas 2 : Assigneu el valor de la segona variable a la primera variable.



Pas 3 : Assigneu el valor de la variable temporal a la segona variable.

Per exemple:

Deixem num1 = 80 i num2 = 50 (abans de canviar).

Després del pas 1 : num1 = 80, num2 = 50 i temp = 80.

Després del pas 2 : num1 = 50, num2 = 50 i temp = 80.

Després del pas 3 : num1 = 50, num2 = 80 i temp = 80.

Per tant, num1 és igual a 50 i num2 és igual a 80 després de canviar.

Implementació de C ++ per intercanviar dos números mitjançant una variable temporal

A continuació es mostra la implementació de C ++ per canviar dos números mitjançant una variable temporal:

#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;
}

Sortida:

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

Implementació de Python per canviar dos números mitjançant una variable temporal

A continuació es mostra la implementació de Python per canviar dos números mitjançant una variable temporal:

com despertar Windows 10 del son
# 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)

Sortida:

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

Implementació de JavaScript per canviar dos números mitjançant una variable temporal

A continuació es mostra el JavaScript implementació per canviar dos números mitjançant una variable temporal:


// 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);

Sortida:

transferència de jocs de vapor desats a un altre ordinador
Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Com intercanviar dos números mitjançant operadors aritmètics (suma i resta)

En primer lloc, obteniu la suma de dos nombres. A continuació, podeu obtenir els números necessaris utilitzant la suma i la resta de la suma.

Implementació de C ++ per intercanviar dos números mitjançant operadors aritmètics (suma i resta)

A continuació es mostra la implementació de C ++ per canviar dos nombres mitjançant operadors aritmètics (suma i resta):

#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;
}

Sortida:

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

Implementació de Python per intercanviar dos nombres mitjançant operadors aritmètics (suma i resta)

A continuació es mostra la implementació de Python per canviar dos nombres mitjançant operadors aritmètics (suma i resta):

# 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)

Sortida:

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

Implementació de JavaScript per intercanviar dos nombres mitjançant operadors aritmètics (suma i resta)

A continuació es mostra la implementació de JavaScript per canviar dos nombres mitjançant operadors aritmètics (suma i resta):


// 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);

Sortida:

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

Com intercanviar dos nombres mitjançant operadors aritmètics (multiplicació i divisió)

Podeu intercanviar dos nombres mitjançant la multiplicació i la divisió en tres senzills passos:

Pas 1 : num1 = num1 * num2

Pas 2 : num2 = num1 / num2

Pas 3 : num1 = num1 / num2

Els valors de num1 i num2 s’intercanvien.

Aquest no és un mètode preferit per canviar dos nombres perquè si qualsevol dels dos números és 0, el producte d'aquests dos números també serà 0. A més, si el segon número és 0, els compiladors llançaran una divisió per error zero. Per tant, heu d’evitar aquest enfocament per canviar dos números.

Com intercanviar dos números mitjançant operadors bitwise

L'operador XOR a bits s'utilitza per canviar dos números.

Implementació de C ++ per intercanviar dos números mitjançant operadors de bits

A continuació es mostra la implementació de C ++ per canviar dos números mitjançant operadors XOR:

#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;
}

Sortida:

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

Implementació de Python per intercanviar dos números mitjançant operadors de bits

A continuació es mostra la implementació de Python per canviar dos números mitjançant operadors XOR:

Relacionat: Com escriure o imprimir en un fitxer a 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)

Sortida:

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

Implementació de JavaScript per canviar dos números mitjançant operadors bitwise

A continuació es mostra la implementació de JavaScript per canviar dos números mitjançant operadors XOR:


// 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);

Sortida:

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

Solució d'una línia per intercanviar dos números en C ++, Python i JavaScript

També podeu canviar dos números en una línia sense fer servir cap funció de biblioteca.

Implementació de C ++ per a una solució de línia

#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;
}

Sortida:

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

Implementació de Python per a una solució de línia

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)

Sortida:

descàrrega gratuïta de jocs de paraules per a Android
Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

Implementació de JavaScript per a una solució de línia


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 + '
');

Sortida:

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

Relacionat: 10 principis bàsics de programació que tot programador ha de conèixer

Si voleu fer una ullada al codi font complet utilitzat en aquest article, aquí teniu el fitxer Dipòsit de GitHub .

Milloreu els hàbits de programació

Si voleu millorar els vostres hàbits de programació, heu de seguir certs principis de programació com KISS (Keep It Simple, Stupid), Dry Code, YAGNI (No ho necessiteu), etc. errors de codificació, heu de conèixer els errors de codificació més comuns. El coneixement us ajudarà a evitar trampes habituals i a mantenir el vostre codi significatiu.

Compartir Compartir Tweet Correu electrònic 10 errors de programació i codificació més habituals

Els errors de codificació poden comportar tants problemes. Aquests consells us ajudaran a evitar errors de programació i a mantenir el vostre codi significatiu.

Llegiu a continuació
Temes relacionats
  • Programació
  • JavaScript
  • Programació
  • Python
Sobre l'autor Yuvraj Chandra(60 articles publicats)

Yuvraj és estudiant universitari en ciències de la computació a la Universitat de Delhi, Índia. És un apassionat del desenvolupament web Full Stack. Quan no escriu, explora la profunditat de les diferents tecnologies.

Més de Yuvraj Chandra

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us