👉 1.4 การออกแบบอัลกอริทึม

 


1.4 การออกแบบอัลกอริทีม
        อัลกอริทึม หมายถึง รายการคำสั่งที่อธิบายขั้นตอนในการแก้ปัญหา โดยแต่ละคำสั่งนั้นต้องเป็นคำสั่งที่ให้ผู้อื่นนำไปปฏิบัติตามได้โดยไม่มีความกำกวม ซึ่งมักอยู่ในรูปของรหัสลำลอง (pseudo code) หรือผังงาน (flowchart) ในกรณีที่ใช้คอมพิวเตอร์เป็นเครื่องมือในการแก้ปัญหา         อัลกอริทึมจะต้องถูกแปลงให้อยู่ในรูปของภาษาโปรแกรมก่อนเพื่อให้คอมพิวเตอร์สามารถปฏิบัติตามได้ ดังนั้นการออกแบบรายละเอียดในอัลกอริทึมจึงขึ้นอยู่กับคนหรือคอมพิวเตอร์ที่จะนำอัลกอริทีมไปปฏิบัติ
ตัวอย่างที่ 1.4
 อัลกอริทึมวาดภาพหมู่บ้าน สำหรับคนนำไปวาด
    ขั้นตอนหลัก
    1. วาดรูปบ้านขนาด 100 หน่วย ที่ตำแหน่ง (O, O)
    2. วาดรูปบ้านขนาด 50 หน่วย ที่ตำแหน่ง (120,90)
    3. วาดรูปบ้านขนาด 80 หน่วย ที่ตำแหน่ง (200,10)
    ขั้นตอนย่อย การวาดรูปบ้านขนาด ร หน่วย ที่ตำแหน่ง (x, y)
    1. วาดรูปสี่เหลี่ยมจัตุรัสความยาวค้นละ ร หน่วย ให้มีมุมล่างซ้ายอยู่ที่พิกัด (x,y)
    2. วาดรูปสามเหลี่ยมดันเท่าขนาด ร หน่วยไว้บนสี่เหลี่ยมจัตุรัส
    1. วาดรูปสี่เหลี่ยมจัตุรัสความยาวค้นละ ร หน่วย ให้มีมุมล่างซ้ายอยู่ที่พิกัด (x,y)
    2. วาดรูปสามเหลี่ยมดันเท่าขนาด ร หน่วยไว้บนสี่เหลี่ยมจัตุรัส
ตัวอย่างที่
 1.5 อัลกอริทึมวาดภาพหมู่บ้าน สำหรับสร้างเป็นโปรแกรมคอมพิวเตอร์
    ขั้นตอนหลัก
    1. วาดรูปบ้านขนาด 100 หน่วย ที่ตำแหน่ง (0, 0)
    2. วาดรูปบ้านขนาด 50 หน่วย ที่ตำแหน่ง (12090)
    3. วาดรูปบ้านขนาด 80 หน่วย ที่ตำแหน่ง (20010)
    ขั้นตอนย่อย 1 การวาดรูปสี่เหลี่ยมจัตุรัสขนาด s หน่วย
    1. ทำคำสั่งต่อไปนี้ซ้ำ 4 รอบ
        1.1 เดินหน้า s หน่วย
        1.2 หันซ้าย 90 องศา
    1. ทำคำสั่งต่อไปนี้ซ้ำ 4 รอบ
        1.1 เดินหน้า s หน่วย
        1.2 หันซ้าย 90 องศา
    ขั้นตอนย่อย 2 การวาดรูปสามเหลี่ยมด้านเท่าขนาด s หน่วย
    1. ทำคำสั่งต่อไปนี้ซ้ำ 3 รอบ
        1.1 เดินหน้า s หน่วย
        1.2 หันซ้าย 120 องศา
    ขั้นตอนย่อย 3 การวาดรูปบ้านขนาด s หน่วย ที่ตำแหน่ง (x, y)
    1. ยกปากกา
    2. เคลื่อนที่ไปยังตำแหน่ง (x,y)
    3. วางปากกา
    4. กำหนดทิศทางไปด้านขวา
    5. วาดรูปสี่เหลี่ยมจัตุรัสขนาด s หน่วย
    6. หันซ้าย 90 องศา
    7. เดินหน้า s หน่วย
    8. หันขวา 90 องศา
    9. วาดรูปสามเหลี่ยมด้านเท่าขนาด s หน่วย

ไม่มีความคิดเห็น:

แสดงความคิดเห็น