6

Recursion

Embed Size (px)

Citation preview

Page 1: Recursion
Page 2: Recursion

ี ์ ัความหมายของรีเคอรช์ันรีเคอร์ชัน เป็นเทคนิคการแก้ปัญหา ลักษณะปัญหานั้นจะถูกแบ่งออกเป็นส่วนย่อยๆ จํานวนมาก และซ้อนกันเป็นชั้นๆแบงออกเปนสวนยอยๆ จานวนมาก และซอนกนเปนชนๆ แต่ละชั้นก็จะมีลักษณะของการแก้ปัญหาแบบเดียวกัน

ั่ ป็ ปั ่ ็ ีส่ ี่ส ํ ไ ้จนกระทงกลายเปนปญหายอยเลกทสุดทสามารถหาคาตอบได

Page 3: Recursion

ลักษณะผังงานโปรแกรมเรียกตัวเองลกษณะผงงานโปรแกรมเรยกตวเอง

โป ี ัโปรแกรมเรยกตวเอง

กระบวนการหาคาํตอบ

มีคาํตอบ

สรุปคาํตอบโปรแกรมเรียกตวัเอง

ส่งค่ากลบัคืน

Page 4: Recursion

ปัญหารีเคอร์ชันการเขียนโปรแกรมที่มีส่วนที่ต้องทําซ้ําซ้อน สามารถใช้ DO LOOP หรือ DO WHILE หรือคําสั่งอื่นๆ ทีว่นซ้ําLOOP หรอ DO WHILE หรอคาสงอนๆ ทวนซาการนิยามปญัหาในรูปตัวปัญหา หรือนิยามสูตรคณิตศาสตร์

ิ่ ึ่ โ ใ ้ ั ั ื ิ ีของสิงหนึง โดยใช้ตัวมันเอง คอื นิยามของแฟกทอเรียลฟังก์ชนั

Page 5: Recursion

การประกาศค่ารีเคอร์ชัน

เงื่อนไขการทําซ้ํา สําหรับการหาค่า n! ต้องกําหนดให้มีค่ามากกว่า หรือเท่ากับ 0 ดังนี้1. ค่าของ 0!=12. ค่าของ n! =n * (n-1)! โดยที่ n มากกว่า 0

Page 6: Recursion