Iteration คืออะไร?

Iteration คือ กระบรวนการที่มีการเริ่มต้น, การทำซ้ำ, และเงื่อนไขที่ก่อให้เกิดจุดจบของกระบรวนการนั้น เรียกว่า กระบรวนการ Iteration

คำๆนี้เป็นคำที่เจอบ่อยมาก และหาคำแปลตรงๆเป็นภาษาไทยใน Google Translate ไม่ได้สักที แต่แปลได้สั้นๆว่า Repeating Task หรือ การทำแบบเดิมซ้ำๆนั่นเอง

Iteration มีกี่ประเภท?

Iteration ใน Python มี 2 ประเภท คือ

  1. Indefinite Iteration = จำนวนการทำซ้ำจะขึ้นอยู่กับว่า ตรงกับเงื่อนไขที่มีกี่ครั้ง ก็จะทำซ้ำไปตามจำนวนครั้งที่ตรงกับเงื่อนไขนั้น
  2. Definite Iteration = จำนวนการทำซ้ำได้ถูกกำหนดไว้แล้วว่าจะให้ทำซ้ำทั้งหมดกี่ครั้ง

Loop คืออะไร?

Loop หรือ ลูป คือ โค๊ดที่เราเขียนลงบนโปรแกรมให้เกิด กระบรวนการ Iteration

กล่าวสั้นๆ ได้ว่า เราเขียนลูป เพื่อให้โปรแกรมนั้นมี กระบรวนการ Iteration (หรือทำสิ่งใดสิ่งหนึ่งซ้ำๆ)

ถ้าอ่านแค่นี้ เราอาจจะยังสงสัยว่า แล้วแบบไหนคือ Loop แบบไหนคือ Iteration ล่ะ? เพราะมันก็ฟังดูคล้ายๆกันไม่ใช่เหรอ?

ให้ลองเขียนตัวอย่าง Loop ขึ้นมาสักอันหนึ่ง เพื่อที่เราจะได้เข้าใจง่ายขึ้น

ตัวอย่างที่ 1. Loop ใน Python

ด้านบนนี้เป็นตัวอย่าง Loop และการ execute โปรแกรม ซึ่งแสดงผลเป็น pizza, noodle, และ pasta ในแต่ละบรรทัด

บรรทัดที่ 7 เรียกว่า Python List (ถ้า งง ว่ามันคืออะไร กดอ่านที่นี่ Python List คืออะไร?)

บรรทัดที่ 8 และ 9 คือ ลูป เป็นโค๊ดที่เราเขียนขึ้นมา ซึ่งลูปแบบในตัวอย่างด้านบนเรียกว่า for loop

ต่อมาดูการแสดงผลใต้คำว่า console จะเห็นว่ามีการแสดงผลทั้งหมด 3 อัน แสดงว่า ลูปนี้ทำให้เกิด iteration 3 ครั้ง (3 iterations)

ดังนั้นการจำง่ายๆ เพื่อให้แยกออกระหว่าง Loop และ Iteration คือ

Loop จะใช้เรียก “โค๊ด”

Iteration จะใช้เรียก “กระบรวนการ”

สรุปคือ เราเขียน Loop เพื่อให้เกิด Iteration

ทำไมต้องใช้ Loop?

ถ้าไม่ใช่ลูป โปรแกรมของเราจะยาวมากขึ้น (โปรแกรมที่ยาวเกินไปแบบไม่มีเหตุจำเป็นไม่จัดว่าเป็นโปรแกรมที่ดี) ไปดูตัวอย่างกัน

ตัวอย่างที่ 2. การแสดงข้อมูลใน List

ในรูปด้านบนเป็นการ execute ข้อมูลใน list ซึ่งเป็น list เดียวกันกับตัวอย่างที่ 1. แต่แทนที่จะใช้ loop เพื่อ execute ข้อมูลใน list ออกมา ในตัวอย่างที่ 2. เราใช้ฟังก์ชั่น print() เรียกข้อมูลใน list ออกมาทีละบรรทัด

ใน list ตัวอย่างมีข้อมูลอยู่เพียง 3 ข้อมูลเท่านั้น แต่ข้อมูลของจริงจะมีเยอะกว่านี้แน่นอน เช่น list ของพนักงานจำนวน 3,000 คนที่ตอกบัตรเข้างานวันนี้ เป็นต้น หากเราต้องการดูว่ามีใครบ้างที่ตอกบัตรเข้างาน แต่เราไม่เขียนลูป นั่นหมายความว่าเราจะต้องนั่งพิมพ์ print() ฟังก์ชั่น ถึง 3,000 ครั้งเพื่อให้ได้รายชื่อพนักงานทั้งหมด

ดังนั้น ลูปจึงเป็นเรื่องพื้นฐานที่จำเป็นต้องเข้าใจ และเขียนให้ได้