การเขียนโปรแกรมภาษาคอมพิวเตอร์

โครงสร้างควบคุม การวนรอบ

วัตถุประสงค์การเรียนรู้ในสัปดาห์นี้

เพื่อให้ . .

  1. เข้าใจหลักการทำงานของโครงสร้างวนซ้ำ
    (For และ While Loop)

  2. สามารถเขียนโปรแกรมที่มีการวนซ้ำเพื่อแก้ปัญหาได้

  3. เข้าใจการใช้งานคำสั่ง break และ continue

ชนิดของโครงสร้างวนซ้ำใน Python

  1. **For Loop**
    ใช้สำหรับการวนซ้ำที่จำนวนรอบชัดเจน

  2. **While Loop**
    ใช้สำหรับการวนซ้ำที่เงื่อนไขเป็นจริง

ใช้เพื่อทำซ้ำคำสั่งหรือชุดคำสั่งที่ต้องการ

ตัวแปรประเภท List และ Range

ในภาษา Python, list และ range เป็นเครื่องมือพื้นฐานที่มีบทบาทสำคัญในการเขียนโปรแกรมและการจัดการข้อมูล

list คือโครงสร้างข้อมูลแบบลำดับ (Sequence) ที่สามารถเก็บข้อมูลหลายตัวในตัวแปรเดียว ข้อมูลใน list สามารถเป็นได้ทั้งตัวเลข, สตริง, หรือแม้แต่ list อื่น ๆ

  1. เปลี่ยนแปลงได้ (Mutable): สามารถเพิ่ม, ลบ, หรือแก้ไขค่าสมาชิกภายใน list ได้

  2. มีลำดับ (Ordered): ข้อมูลใน list มีลำดับที่แน่นอน

  3. เก็บข้อมูลได้หลากหลาย

ตัวอย่างการใช้ชุดคำสั่ง List

print(my_list[0])  # ผลลัพธ์: 1 (ค่าตำแหน่งแรก)

เข้าถึงข้อมูล: ใช้ดัชนี (Index)

my_list = [1, 2, 3, 4, 5]  # สร้าง list ด้วยข้อมูลเริ่มต้น
empty_list = []  # สร้าง list ว่าง
mixed_list = [1, "hello", 3.14]  # เก็บข้อมูลได้หลายประเภท

การสร้างตัวแปรประเภท List

my_list.append(6)  # เพิ่มค่าที่ท้าย list

เพิ่มข้อมูล

my_list.remove(3)  # ลบค่า 3 ออกจาก list

ลบข้อมูล

for item in my_list:
    print(item)

วนรอบชุดคำสั่ง

วัตถุประเภท Range

range คือฟังก์ชันที่ใช้สร้างลำดับตัวเลข (Sequence) ตามเงื่อนไขที่กำหนด มักใช้ในลูป (Loop)

  1. เป็นลำดับ (Sequence): เก็บค่าตัวเลขตามลำดับ

  2. ไม่เปลี่ยนแปลงได้ (Immutable): ไม่สามารถแก้ไขข้อมูลภายใน range ได้

  3. มีขนาดเบา: ใช้หน่วยความจำน้อยกว่าการสร้าง list ที่มีค่าตัวเลขเหมือนกัน

ตัวอย่างการใช้ชุดคำสั่ง List

range(10)  # สร้างลำดับตั้งแต่ 0 ถึง 9 (ไม่รวม 10)
range(1, 11)  # สร้างลำดับตั้งแต่ 1 ถึง 10
range(1, 11, 2)  # สร้างลำดับ 1, 3, 5, 7, 9 (เพิ่มทีละ 2)
range(10, 0, -1)  # สร้างลำดับถอยหลัง 10, 9, ..., 1

การสร้างตัวแปรประเภท List

numbers = list(range(5))  # [0, 1, 2, 3, 4]

แปลง range เป็น list

for i in range(5):
    print(i)  # พิมพ์เลข 0 ถึง 4

วนรอบชุดคำสั่ง

ลองทำดู

my_list = ["a", "b", "c"]
for i in range(len(my_list)):
    print(f"Index {i}: {my_list[i]}")
คุณสมบัติ List Range
การเปลี่ยนแปลงข้อมูล เปลี่ยนแปลงได้ เปลี่ยนแปลงไม่ได้
การจัดเก็บข้อมูล เก็บข้อมูลหลากหลายประเภท เก็บได้เฉพาะลำดับตัวเลข
ขนาดหน่วยความจำ ใช้หน่วยความจำมากกว่า ใช้หน่วยความจำน้อยกว่า
การใช้งานในลูป ใช้ได้แต่ไม่ประหยัดหน่วยความจำ ใช้ได้เหมาะสมและประหยัดหน่วยความจำ

List vs Range

การใช้งาน For Loop

for i in range(1, 6):
    print("รอบที่:", i)

ใช้สำหรับการวนซ้ำในลำดับข้อมูล เช่น list, range()

ผลลัพธ์:
รอบที่: 1
รอบที่: 2
รอบที่: 3
รอบที่: 4
รอบที่: 5

คำสั่ง
print("รอบที่:", i) ทำงานซ้ำ 6 ครั้ง

การใช้งาน While Loop

count = 1
while count <= 5:
    print("รอบที่:", count)
    count += 1

While Loop จะทำงานวนรอบต่อไปเรื่อย ๆ ตราบใดที่เงื่อนไขยังเป็นจริง

ผลลัพธ์:
รอบที่: 1
รอบที่: 2
รอบที่: 3
รอบที่: 4
รอบที่: 5

การวนรอบจะหยุดก็ต่อเมื่อเงื่อนไข count<= 5 เป็นเท็จ

คำสั่ง break และ continue

for i in range(1, 10):
    if i == 5:
       
break
    print(i)

คำสั่ง break: ใช้เพื่อหยุดการวนซ้ำก่อนครบจำนวนรอบ

ผลลัพธ์:
1

2

3

4

เจอ break เมื่อไร หยุดการทำงานในวงรอบทันที

คำสั่ง break และ continue

for i in range(1, 6):
    if i == 3:
       
continue
    print(i)

คำสั่ง continue:
ใช้เพื่อข้ามคำสั่งในรอบนั้นและไปยังรอบถัดไป

ผลลัพธ์:
1

2

4

5

6

เจอ continue เมื่อไร จะข้ามรอบปัจจุบันทันที

Workshops

  1. เขียนโปรแกรมใช้ For Loop เพื่อพิมพ์เลข 1-10

  2. เขียนโปรแกรมใช้ While Loop เพื่อแสดงเลขคู่น้อยกว่า 20

  3. ใช้คำสั่ง break หยุดการวนซ้ำเมื่อเลขเท่ากับ 7

  4. ใช้คำสั่ง continue ข้ามการแสดงเลขที่หาร 3 ลงตัว

  5. ใช้ For Loop พิมพ์แม่สูตรคูณ 2-12

  6. ใช้ While Loop แสดงผลรวมของเลขตั้งแต่ 1 ถึง 50

  7. ใช้ For Loop พิมพ์ตัวเลข 1-20 แต่ข้ามเลขที่หาร 4 ลงตัว

© Aj. Krit Th.

https://www.kritth.com

20204-2107 Iterations 20241126

By Krit Th.

20204-2107 Iterations 20241126

  • 68