การเลือกและการทำซ้ำ
แนะนำใหม่| English | ความหมาย |
|---|---|
| selection/sɪˈlekʃn/ | การเลือก |
| iteration/ˌɪtəˈreɪʃn/ | การวนซ้ำ |
เกินกว่าโค้ดแบบเส้นตรง
- จนถึงตอนนี้ โค้ดได้รันจาก บนลงล่าง, statement หนึ่งต่อหนึ่ง
- อัลกอริทึมจริงต้องมีการ เลือก และ ทำซ้ำ — ไม่ใช่แค่ทำงานไปตามเส้นตรง
- การเลือก: เลือกว่าควรรันโค้ดส่วนไหน โดยอิงตามเงื่อนไข (
if) - การทำซ้ำ (วนซ้ำ): รันโค้ดบางส่วนหลายครั้ง (
while,for)
การเลือก: การตัดสินใจ
- การเลือกช่วยให้โปรแกรมสามารถเดินตาม เส้นทางที่แตกต่างกัน ขึ้นอยู่กับข้อมูล
- "หากคะแนนสูงกว่า $90$ ให้พิมพ์ A; มิฉะนั้นให้พิมพ์ B"
- โปรแกรมจะ แยกทาง — มีเพียงเส้นทางเดียวที่จะถูก執行ในแต่ละครั้ง
- หน่วยที่ 2 สร้างสิ่งนี้ด้วย เงื่อนไข Boolean และคำสั่ง
if
การทำซ้ำ: ทำอีกครั้ง
- การทำซ้ำจะรันบล็อกโค้ด ซ้ำแล้วซ้ำเล่า จนกว่าจะมีเงื่อนไขบอกให้หยุด
- "ขอใส่รหัสผ่านไปเรื่อยๆ จนกว่าผู้ใช้จะพิมพ์รหัสที่ถูกต้อง"
- ลูปช่วยคุณจากการคัดลอกโค้ดเดิมซ้ำๆ หลายครั้ง
- ลูปคือวิธีการที่โปรแกรมใช้ประมวลผลรายการ ผลรวม และการค้นหา
การรวมสามอย่างเข้าด้วยกัน
- สาม ตัวประกอบพื้นฐาน ของอัลกอริทึมทุกชนิด: ลำดับ, การเลือก, **การทำซ้ำ
- ลำดับ = ทำขั้นตอนตามลำดับ; การเลือก = เลือก; การทำซ้ำ = ทำซ้ำ
- โปรแกรมเกือบทั้งหมดประกอบด้วยสามสิ่งนี้ ซึ่งซ้อนกันและรวมกัน
- การเข้าใจสิ่งเหล่านี้จะทำให้คุณสามารถแสดง การคำนวณ ใดๆ ได้
การติดตาม loop
ทำซ้ำรอบของลูปนับและดูผลรวมสะสมเพิ่มขึ้นทีละขั้น
การเลือกและการทำซ้ำฟังดูคล้ายกันแต่ทำหน้าที่ต่างกัน การเลือก (if) เลือกว่าบล็อกจะ被执行 หนึ่งครั้ง ตามเงื่อนไข; การทำซ้ำ (ลูป) รันบล็อก หลายครั้ง ตราบใดที่มีเงื่อนไขอยู่ โปรแกรมรวม ลำดับ + การเลือก + การทำซ้ำ เข้าด้วยกัน — ตัวประกอบพื้นฐานทั้งสามนี้แสดงถึงอัลกอริทึมได้ทุกชนิด
อัลกอริทึมสำหรับการให้เกรด:
- ลำดับ: อ่านคะแนน
- การเลือก: หาก ≥
score >= 90เป็น A; มิฉะนั้นเป็น B - การทำซ้ำ: ทำเช่นนี้สำหรับ ทุก นักเรียนในรายการ
อัลกอริทึมต้องการมากกว่าแค่ ลำดับ — ยังต้องการ การเลือก (เลือกเส้นทางด้วย if, อิงตามเงื่อนไข Boolean) และ **การทำซ้ำ/**วนซ้ำ (ทำซ้ำบล็อกด้วยลูป) ตัวประกอบพื้นฐานทั้งสามนี้ — ลำดับ, การเลือก, การทำซ้ำ — รวมและซ้อนกันเพื่อแสดงถึงอัลกอริทึมทุกชนิด
การเลือกโค้ดที่จะรันโดยอาศัยเงื่อนไขเรียกว่า...
Difficulty 1/5 · 100 coins + a small bonus on first completion today
การเลือก (if) เลือกเส้นทาง; การซ้ำ (loops) ทำซ้ำบล็อกหนึ่งครั้ง
การทำซ้ำบล็อกโค้ดหลายครั้งเรียกว่า...
Difficulty 1/5 · 100 coins + a small bonus on first completion today
การทำซ้ำ/การวนซ้ำทำด้วยลูป while และ for
โครงสร้างพื้นฐานสามอย่างของอัลกอริทึมคืออะไร?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
ลำดับขั้นตอน, การเลือก และการซ้ำ สามารถแสดงอัลกอริทึมได้ทั้งหมด
คำสั่ง if เลือกว่าบล็อกจะรันหรือไม่ ส่วนลูปสามารถรันบล็อกได้หลายครั้ง
Difficulty 1/5 · 100 coins + a small bonus on first completion today
การเลือก = เลือกครั้งเดียว; การซ้ำ = ทำซ้ำ
การรันโค้ดซ้ำๆ ด้วยลูปเรียกว่า ___ (คำเดียว, คำ-Yearn ของ repetition).
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Iteration คือการทำซ้ำผ่านลูป