Cách hoán đổi hai biến trong C ++, Python và JavaScript

Cách hoán đổi hai biến trong C ++, Python và JavaScript

Là một lập trình viên, bạn có thể đã phải đối mặt với một tình huống yêu cầu bạn hoán đổi hai số. Hoán đổi hai số là một trong những tình huống phổ biến nhất mà các lập trình viên phải đối mặt khi viết mã.





Bạn có thể hoán đổi hai số bằng cách sử dụng một biến tạm thời hoặc bằng cách sử dụng các phép toán số học và bit. Trong bài viết này, bạn sẽ tìm hiểu về nhiều phương pháp cho phép bạn hoán đổi hai số.





Cách hoán đổi hai số bằng một biến tạm thời

Sử dụng một biến tạm thời là cách đơn giản nhất để hoán đổi hai số. Làm theo ba bước đơn giản sau:





Bước 1 : Gán giá trị của biến thứ nhất cho một biến tạm thời.

Bước 2 : Gán giá trị của biến thứ 2 cho biến thứ nhất.



Bước 3 : Gán giá trị của biến tạm thời cho biến thứ 2.

Ví dụ:





Cho num1 = 80 và num2 = 50 (trước khi hoán đổi).

Sau bước 1 : num1 = 80, num2 = 50 và temp = 80.





Sau bước 2 : num1 = 50, num2 = 50 và temp = 80.

Sau bước 3 : num1 = 50, num2 = 80 và temp = 80.

Do đó, num1 bằng 50 và num2 bằng 80 sau khi hoán đổi.

Triển khai C ++ để hoán đổi hai số bằng một biến tạm thời

Dưới đây là triển khai C ++ để hoán đổi hai số bằng cách sử dụng một biến tạm thời:

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

Đầu ra:

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

Triển khai Python để hoán đổi hai số bằng một biến tạm thời

Dưới đây là triển khai Python để hoán đổi hai số bằng cách sử dụng một biến tạm thời:

windows 10 không tìm thấy hệ điều hành
# 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)

Đầu ra:

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

Triển khai JavaScript để hoán đổi hai số bằng một biến tạm thời

Dưới đây là JavaScript triển khai để hoán đổi hai số bằng cách sử dụng một biến tạm thời:


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

Đầu ra:

chuyển tin nhắn textra sang điện thoại mới
Before Swapping:
num1 = 80, num2 = 50
After Swapping:
num1 = 50, num2 = 80

Cách hoán đổi hai số bằng toán tử số học (phép cộng và phép trừ)

Đầu tiên, lấy tổng của hai số. Sau đó, bạn có thể nhận được các số cần thiết bằng cách sử dụng tổng và trừ từ tổng.

Triển khai C ++ để hoán đổi hai số bằng toán tử số học (phép cộng và phép trừ)

Dưới đây là cách triển khai C ++ để hoán đổi hai số bằng cách sử dụng toán tử số học (cộng và trừ):

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

Đầu ra:

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

Triển khai Python để hoán đổi hai số bằng các toán tử số học (phép cộng và phép trừ)

Dưới đây là triển khai Python để hoán đổi hai số bằng cách sử dụng toán tử số học (cộng và trừ):

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

Đầu ra:

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

Triển khai JavaScript để hoán đổi hai số bằng các toán tử số học (phép cộng và phép trừ)

Dưới đây là triển khai JavaScript để hoán đổi hai số bằng cách sử dụng toán tử số học (cộng và trừ):


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

Đầu ra:

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

Cách hoán đổi hai số bằng toán tử số học (phép nhân và phép chia)

Bạn có thể hoán đổi hai số bằng phép nhân và phép chia trong ba bước đơn giản:

Bước 1 : num1 = num1 * num2

Bước 2 : num2 = num1 / num2

Bước 3 : num1 = num1 / num2

Giá trị của num1 và num2 được hoán đổi cho nhau.

Đây không phải là phương pháp được ưa thích để hoán đổi hai số vì nếu một trong hai số là 0, thì tích của hai số này cũng sẽ là 0. Hơn nữa, nếu số thứ hai là 0, trình biên dịch sẽ ném ra lỗi chia cho số không. Vì vậy, bạn nên tránh cách tiếp cận này để hoán đổi hai số.

Cách hoán đổi hai số bằng toán tử Bitwise

Toán tử XOR bitwise được sử dụng để hoán đổi hai số.

Triển khai C ++ để hoán đổi hai số bằng toán tử Bitwise

Dưới đây là triển khai C ++ để hoán đổi hai số bằng cách sử dụng toán tử 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;
}

Đầu ra:

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

Triển khai Python để hoán đổi hai số bằng cách sử dụng toán tử Bitwise

Dưới đây là triển khai Python để hoán đổi hai số bằng cách sử dụng toán tử XOR:

Có liên quan: Cách viết hoặc in ra tệp bằng 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)

Đầu ra:

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

Triển khai JavaScript để hoán đổi hai số bằng toán tử Bitwise

Dưới đây là triển khai JavaScript để hoán đổi hai số bằng cách sử dụng toán tử 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);

Đầu ra:

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

Giải pháp một dòng để hoán đổi hai số trong C ++, Python và JavaScript

Bạn cũng có thể hoán đổi hai số trong một dòng mà không cần sử dụng bất kỳ hàm thư viện nào.

Triển khai C ++ cho Giải pháp Một dòng

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

Đầu ra:

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

Triển khai Python cho Giải pháp Một dòng

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)

Đầu ra:

cách khôi phục ảnh trên android
Before Swapping:
num1: 80, num2: 50
After Swapping:
num1: 50, num2: 80

Triển khai JavaScript cho giải pháp một dòng


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

Đầu ra:

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

Liên quan: 10 nguyên tắc lập trình cơ bản mà mọi lập trình viên phải biết

Nếu bạn muốn xem mã nguồn hoàn chỉnh được sử dụng trong bài viết này, đây là Kho lưu trữ GitHub .

Cải thiện thói quen lập trình của bạn

Nếu bạn muốn cải thiện thói quen lập trình của mình, bạn nên tuân theo các nguyên tắc lập trình nhất định như KISS (Keep It Simple, Stupid), Dry Code, YAGNI (You Aren’t going to Need It), v.v. Tuy nhiên, nếu bạn mắc phải một số nguyên tắc chung những lỗi mã hóa, bạn nên biết về những lỗi mã hóa phổ biến nhất. Kiến thức sẽ giúp bạn tránh những cạm bẫy phổ biến và giữ cho mã của bạn có ý nghĩa.

Đăng lại Đăng lại tiếng riu ríu E-mail 10 lỗi lập trình và mã hóa phổ biến nhất

Sai lầm về mã hóa có thể dẫn đến rất nhiều vấn đề. Những mẹo này sẽ giúp bạn tránh những lỗi lập trình và giữ cho mã của bạn có ý nghĩa.

Đọc tiếp
Chủ đề liên quan
  • Lập trình
  • JavaScript
  • Lập trình
  • Python
Giới thiệu về tác giả Yuvraj Chandra(60 bài báo đã xuất bản)

Yuvraj là sinh viên ngành Khoa học Máy tính tại Đại học Delhi, Ấn Độ. Anh ấy đam mê Phát triển Web Full Stack. Khi không viết, anh ấy đang khám phá chiều sâu của các công nghệ khác nhau.

Xem thêm từ Yuvraj Chandra

Theo dõi bản tin của chúng tôi

Tham gia bản tin của chúng tôi để biết các mẹo công nghệ, đánh giá, sách điện tử miễn phí và các ưu đãi độc quyền!

Bấm vào đây để đăng ký