บทนำ
ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีสลับตัวแปรสองตัวในภาษาต่างๆ การสลับหมายถึงการสลับค่าของตัวแปรสองตัว มาดูตัวอย่างกัน
อินพุต
a = 3 b = 5
เอาต์พุต
a = 5 b = 3
Python
เราสามารถสลับตัวแปรได้ด้วยโค้ดเพียงบรรทัดเดียวใน Python มาดูโค้ดกัน
ตัวอย่าง
# initializing the variables
a, b = 3, 5
# printing before swaping
print("Before swapping:-", a, b)
# swapping
a, b = b, a
# printing after swapping
print("After swapping:-", a, b)
เอาต์พุต
Before swapping:- 3 5 After swapping:- 5 3
ในภาษาเช่น C/C++, PHP และ Java เราจะใช้ตัวดำเนินการ xor เพื่อให้การสลับง่ายขึ้น และช่วยให้สลับได้ในบรรทัดเดียว มาดูขั้นตอนการเขียนโปรแกรมกัน
- กำหนดค่าเริ่มต้นให้ตัวแปรสองตัวด้วยค่าที่ต่างกัน
- ดำเนินการ xor บนตัวแปรสองตัวและกำหนดผลลัพธ์ให้ตัวแปรแรก
- ดำเนินการ xor อีกครั้งและกำหนดผลลัพธ์ให้ตัวแปรที่สอง
- ดำเนินการ xor อีกครั้งและกำหนดผลลัพธ์ให้ตัวแปรแรก
- ตัวแปรจะถูกสลับกัน
C/C++
ตัวอย่าง
# include <stdio.h>
int main() {
int a = 3, b = 5;
printf("Before Swapping:- %d %d", a, b);
(a ^= b), (b ^= a), (a ^= b);
printf("After Swapping:- %d %d", a, b);
return 0;
}
เอาต์พุต
Before swapping:- 3 5 After swapping:- 5 3
Java
ตัวอย่าง
class Swap {
public static void main (String[] args) {
int a = 3, b = 5;
System.out.println("Before Swapping:- " + a + " " + b);
a = a ^ b ^ (b = a);
System.out.println("After Swapping:- " + a + " " + b);
}
}
เอาต์พุต
Before swapping:- 3 5 After swapping:- 5 3
PHP
ตัวอย่าง
<?php
$a = 5;
$b = 10;
echo "Before Swapping:- ", $a, " ", $b;
($a ^= $b);
($b ^= $a);
($a ^= $b);
echo "After Swapping:- ", $a, " ", $b;
?>
เอาต์พุต
Before Swapping:- 5 10After Swapping:- 10 5
สรุป
หากคุณมีข้อสงสัยในบทช่วยสอนนี้ โปรดระบุในส่วนความคิดเห็น