บทที่ 3: ตัวดำเนินการและการควบคุมการไหลของโปรแกรม
1. ตัวดำเนินการทางคณิตศาสตร์
ตัวดำเนินการทางคณิตศาสตร์ใน Python ใช้สำหรับคำนวณค่าต่าง ๆ เช่น การบวก ลบ คูณ หาร เป็นต้น
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
+ | บวก | 3 + 2 # ได้ 5 |
- | ลบ | 7 - 4 # ได้ 3 |
* | คูณ | 5 * 3 # ได้ 15 |
/ | หาร | 10 / 2 # ได้ 5.0 |
// | หารแบบปัดเศษลง | 10 // 3 # ได้ 3 |
% | หารเอาเศษ | 10 % 3 # ได้ 1 |
** | ยกกำลัง | 2 ** 3 # ได้ 8 |
2. ตัวดำเนินการเปรียบเทียบ
ตัวดำเนินการเปรียบเทียบใช้สำหรับตรวจสอบค่าระหว่างตัวแปรว่ามีความสัมพันธ์กันอย่างไร เช่น มากกว่า น้อยกว่า เท่ากัน หรือไม่เท่ากัน เป็นต้น
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
== | เท่ากับ | 5 == 5 # ได้ True |
!= | ไม่เท่ากับ | 5 != 3 # ได้ True |
> | มากกว่า | 5 > 3 # ได้ True |
< | น้อยกว่า | 2 < 7 # ได้ True |
>= | มากกว่าหรือเท่ากับ | 5 >= 5 # ได้ True |
<= | น้อยกว่าหรือเท่ากับ | 3 <= 5 # ได้ True |
3. กฎพื้นฐานลำดับการดำเนินการ
Python ใช้กฎ PEMDAS (Parentheses, Exponents, Multiplication/Division, Addition/Subtraction) ในการคำนวณ
- ดำเนินการในวงเล็บก่อน จากซ้ายไปขวา
- เลขยกกำลัง และ √ จากซ้ายไปขวา
- การคูณ และ หาร จากซ้ายไปขวา
- การบวก และ การลบ จากซ้ายไปขวา
ตัวอย่าง:
result = (2 + 3) * 4 / 2 ** 2
print(result) # ได้ 5.0
4. การควบคุมการไหลของโปรแกรม
4.1 คำสั่ง if
, elif
, else
ใช้สำหรับให้โปรแกรมตัดสินใจตามเงื่อนไข
age = 10
if age < 13:
print("คุณเป็นเด็ก")
elif age < 20:
print("คุณเป็นวัยรุ่น")
else:
print("คุณเป็นผู้ใหญ่")
graph TD; A(เริ่มต้น) --> B{อายุ < 13?}; B -- ใช่ --> C(คุณเป็นเด็ก); B -- ไม่ --> D{อายุ < 20?}; D -- ใช่ --> E(คุณเป็นวัยรุ่น); D -- ไม่ --> F(คุณเป็นผู้ใหญ่); C --> G(จบ); E --> G; F --> G;
4.2 ลูป for
ใช้สำหรับทำซ้ำตามจำนวนครั้งที่กำหนด
for i in range(1, 6):
print("รอบที่", i)
graph TD; A(เริ่มต้น) --> B{i <= 5?}; B -- ใช่ --> C(แสดงผลรอบที่ i); C --> D(เพิ่มค่า i); D --> B; B -- ไม่ --> E(จบ);
4.3 ลูป while
ใช้สำหรับทำซ้ำจนกว่าเงื่อนไขจะเป็น False
x = 3
while x > 0:
print("ค่า x:", x)
x -= 1
graph TD; A(เริ่มต้น) --> B{x > 0?}; B -- ใช่ --> C(แสดงผลค่า x); C --> D(ลดค่า x ลง 1); D --> B; B -- ไม่ --> E(จบ);
โจทย์ท้ายบท
- เขียนโปรแกรมรับเลขสองตัวจากผู้ใช้ แล้วแสดงผลว่าตัวไหนมากกว่ากัน
- สร้างโปรแกรมที่รับอายุจากผู้ใช้ และบอกว่าผู้ใช้อยู่ในช่วงวัยไหน (เด็ก, วัยรุ่น, ผู้ใหญ่)
- เขียนโปรแกรมคำนวณหาผลรวมของตัวเลขตั้งแต่ 1 ถึง 10 ด้วยลูป
for
- ใช้
while
loop เพื่อให้ผู้ใช้ป้อนตัวเลข จนกว่าจะป้อนเลข 0 - เขียนโปรแกรมใช้
if
และfor
เพื่อแสดงเลขคู่ตั้งแต่ 1 ถึง 20