Top Banner
อออออออออออออออออออออ อออออออ Algorithm and Programming อออ อ.ออ. ออออออออออ ออออออออออออ
25

Algorithm programming

Jul 27, 2015

Download

Education

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Algorithm programming

อั�ลกอัริ�ทึ�มและการิเขี�ยนโปริแกริมAlgorithm and Programmingอั�ลกอัริ�ทึ�มและการิเขี�ยนโปริแกริมAlgorithm and Programming

โดย อั.ดริ. แจ่�มจ่�นทึริ� ศริ�อัริ�ณริ�ศม�

Page 2: Algorithm programming

หล�กการิแก�ป�ญหา

เส้�นทางจาก A ไปยั ง H เส้�นทางใดใช้�เวลาเด�นทางน�อยัท��ส้�ด

(ตั วเลขแทนเวลาเป�นนาท�)

Page 3: Algorithm programming

หล�กการิแก�ป�ญหา

1 . การว�เคราะห์!และก"าห์นดรายัละเอ�ยัดของป#ญห์า

2. การวางแผนในการแก�ป#ญห์า3. การด"าเน�นการแก�ป#ญห์า4. การตัรวจส้อบและปร บปร�ง

Page 4: Algorithm programming

หล�กการิแก�ป�ญหา

1 . การว�เคราะห์!และก"าห์นดรายัละเอ�ยัดของป#ญห์า

- ส้��งท��ตั�องการค'ออะไร

- ข�อมู*ลท��ก"าห์นดให์�ค'ออะไร

- พิ�จารณาข�อมู*ลและเง'�อนไขว-าเพิ�ยังพิอท��จะห์าค"าตัอบของป#ญห์าได�ห์ร'อไมู-

Page 5: Algorithm programming

หล�กการิแก�ป�ญหา

2. การวางแผนในการแก�ป#ญห์า - เล'อกใช้�เคร'�องมู'อและว�ธี�การเพิ'�อให์�ได�มูา ซึ่0�งค"าตัอบ - ใช้�ประส้บการณ!

- พิ�จารณารายัละเอ�ยัดของส้��งท��ตั�องการห์า ค"าตัอบห์าความูส้ มูพิ นธี!

- อาศั ยัรห์ ส้ล"าลอง (pseudo code) ห์ร'อ ผ งงาน (flowchart) เข�ามูาช้-วยัในการ ถ่-ายัทอดความูค�ด

Page 6: Algorithm programming

หล�กการิแก�ป�ญหา

3. การด"าเน�นการแก�ป#ญห์า

เป�นการน"าเคร'�องมู'อและว�ธี�การท��ได�วางแผนไว�ในข 3นตัอนท�� 2 มูาด"าเน�นการแก�ป#ญห์า

Page 7: Algorithm programming

หล�กการิแก�ป�ญหา

4. การตัรวจส้อบและปร บปร�ง - ตัรวจส้อบว�ธี�การท��น"ามูาซึ่0�งผลล พิธี!ว-าถ่*กตั�องตัามูรายัละเอ�ยัดของป#ญห์าท��ก"าห์นดไว�ห์ร'อไมู-

- อาจใช้�ว�ธี�การยั�อนกล บไปท"าข 3นตัอนท��ผ-านมูาซึ่"3าๆ เพิ'�อทบทวนห์ร'อปร บปร�งจนกว-าจะได�ค"าตัอบท��ถ่*กตั�อง

Page 8: Algorithm programming

Algorithm

อ ลกอร�ท0มู (Algorithm ) ห์มูายัถ่0ง

ข 3นตัอนห์ร'อล"าด บการประมูวลผลในการแก�ป#ญห์าใดป#ญห์าห์น0�ง ห์ร'อล"าด บการท"างานซึ่0�งจะช้-วยัให์�เจ�าของผลงาน ห์ร'อผ*�ท��ส้นใจ ห์ร'อโปรแกรมูเมูอร!เห์6นข 3นตัอนของการท"างาน ช้-วยัตัรวจส้อบความูถ่*กตั�อง และเข�าใจการท"างานได�ง-ายัข03น

Page 9: Algorithm programming

หล�กการิเขี�ยน Algorithm

เร�ยังล"าด บความูส้"าค ญของงานท��จะท"า เข�ยันออกมูาในล กษณะภาษาเข�ยัน

ส้ามูารถ่เข�าใจง-ายัมู�ความูละเอ�ยัดของ

โครงส้ร�างพิอส้มูควร

Step 1 Step 2 Step 3

Page 10: Algorithm programming

Flow chart

โฟลว!ช้าร!ตั (Flow chart) ห์ร'อผ งงาน ห์มูายัถ่0ง

ผ งแส้ดงข 3นตัอนและล"าด บการท"างานตั-างๆ ในโปรแกรมู โดยัแส้ดงในร*ปของส้ ญล กษณ!และตั วอ กษรประกอบการอธี�บายัในแตั-ละข 3นตัอน

Page 11: Algorithm programming

Flow chart

ส้ถ่าบ นมูาตัรฐานแห์-งช้าตั�อเมูร�กา (The American National Standard Institute: ANSI)ได�ก"าห์นดส้ ญล กษณ!ท��เป�นมูาตัรฐานในการเข�ยันผ งงานไว�ตั-างๆ ด งน�3

Page 12: Algorithm programming
Page 13: Algorithm programming

หล�กการิใช้�สั�ญล�กษณ�ขีอังผั�งงาน

ผ งงาน (Flowchart) ท��เข�ยันข03น ตั�องมู�จ�ดเร��มูตั�น และ จ�ดส้�3นส้�ด (Start and Stop)1

ส้ ญล กษณ!แตั-ละร*ปจะมู�การเช้'�อมูตั-อด�วยั ท�ศัทางการท"างาน (Direction of Flow)

2

ท�ศัทางการท"างานจะตั�องเร��มูตั�นจากจ�ดเร��มูตั�นและจบท��จ�ดส้�3นส้�ดเท-าน 3น3

Page 14: Algorithm programming

โคริงสัริ�างการิเขี�ยนผั�งงาน

โคริงสัริ�างแบบล(าด�บ(Sequential Structure)

โคริงสัริ�างแบบล(าด�บ(Sequential Structure)

โคริงสัริ�างแบบม�ทึางเล)อัก(Selection Structure)

โคริงสัริ�างแบบม�ทึางเล)อัก(Selection Structure)

โคริงสัริ�างทึ(าซ้ำ(+า(repetition Structure)

โคริงสัริ�างทึ(าซ้ำ(+า(repetition Structure)

Page 15: Algorithm programming

ก�จ่กริริมทึ�, 1 ฝึ.กปฏิ�บ�ติ�

1 .ให์�เข�ยันผ งงานแส้ดงการตั�มูท"าบะห์มู��ก0�งส้"าเร6จร*ป

2. เข�ยันผ งงานแส้ดงการค"านวณห์าพิ'3นท��ร*ปส้ามูเห์ล��ยัมูซึ่0�งมู�การก"าห์นดความูยัาวฐานและความูส้*ง

3. เข�ยันแผนผ งแส้ดงการเด�นทางมูามูห์าว�ทยัาล ยัของตันเอง

Page 16: Algorithm programming

การิก(าหนดค�าให�ติ�วแปริ

เป�นการเปล��ยันจากข�อความูเป�นรห์ ส้ล"าลอง ช้-วยัลดความูยัาวของข�อความูเมู'�อมู�การกล-าวซึ่"3า

ห์ลายัคร 3ง ช้-วยัให์�การถ่-ายัทอดความูค�ดกระช้ บ ช้-วยัให์�เข�าใจง-ายั การก"าห์นดจะใช้�ร*ปของตั วอ กษรภาษาอ งกฤษเป�น

ช้'�อข�อมู*ล ณ เวลาห์น0�งๆ ตั วแปรจะมู�ค-าได�เพิ�ยังค-าเด�ยัวเท-าน 3น ตั วแปรส้ามูารถ่เปล��ยันค-าได� ข03นอยั*-ก บการด"าเน�นการ

ก บข�อมู*ลน 3นๆ ได�ด�วยั

Page 17: Algorithm programming

การิก(าหนดค�าให�ติ�วแปริ

การก"าห์นดค-าให์�ตั วแปร ส้ามูารถ่ท"าได� 3 ว�ธี�ค'อ

1 .การร บค-าจากภายันอก

2 .การก"าห์นดค-าจากตั วแปรอ'�น

3 .การก"าห์นดค-าจากการค"านวณ

Page 18: Algorithm programming

การิก(าหนดค�าให�ติ�วแปริ

ส้ ญล กษณ!ท��ใช้�ส้"าห์ร บการก"าห์นดค-าให์�ตั วแปร

ใช้�เพิ'�อน"าค-าทางขวาของล*กศัร ไปก"าห์นดให์�ก บตั วแปรทางด�านซึ่�ายัของล*กศัร

เช้-น X 2 ห์มูายัถ่0ง น"าค-า 2 ไปใส้- x

a b x c ห์มูายัถ่0ง น"าผลล พิธี!ของ b x c ไปใส้-ไว�ใน a

Page 19: Algorithm programming

ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 1

การค"านวณห์าพิ'3นท��ของร*ปส้ามูเห์ล��ยัมู ซึ่0�งมู�การก"าห์นดความูยัาวฐานและความูส้*ง

ข 3นตัอนท�� 1 ถ่-ายัทอดความูค�ดเป�นรห์ ส้ล"าลอง (pseudo code)

เร��มูตั�น 1. ก"าห์นดค-าความูยัาวฐาน 2. ก"าห์นดค-าความูส้*ง

3. ค"านวนพิ'3นท��ร*ปส้ามูเห์ล��ยัมูจากส้*ตัร พิ'3นท�� =½ x ฐาน x ส้*ง

4. แส้ดงผลล พิธี!พิ'3นท�� จบ

Page 20: Algorithm programming

ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 1

ข 3นตัอนท�� 2 ถ่-ายัทอดเป�นผ งงาน (flowchart

เร��มูตั�นเร��มูตั�น

แส้ดงผลล พิธี!พิ'3นท��ส้ามูเห์ล��ยัมู

แส้ดงผลล พิธี!พิ'3นท��ส้ามูเห์ล��ยัมู

จบจบ

ค"านวณพิ'3นท��ส้ามูเห์ล��ยัมู ค'อ ½ x ฐาน x ส้*ง

ค"านวณพิ'3นท��ส้ามูเห์ล��ยัมู ค'อ ½ x ฐาน x ส้*ง

ก"าห์นดค-าความูยัาวฐานก"าห์นดค-าความูยัาวฐาน

ก"าห์นดค-าความูส้*งก"าห์นดค-าความูส้*ง

Page 21: Algorithm programming

ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 2

ค�ดราคาตั =วภาพิยันตัร! โดยัปกตั�ราคาตั =วภาพิยันตัร!เท-าก บ 120 บาท เน'�องจากเป�นว นครอบคร ว ผ*�ท��มู�อายั�ตั"�ากว-าห์ร'อเท-าก บ 12 ป> จะได�ร บส้-วนลด 40 บาท ถ่�ามู�อายั�มูากกว-าน 3นจะได�ร บส้-วนลด 20 บาท

ข 3นตัอนท�� 1 ถ่-ายัทอดความูค�ดเป�นรห์ ส้ล"าลอง (pseudo code) เร��มูตั�น 1. ก"าห์นดค-าราคาตั =วเท-าก บ 120 บาท 2. ร บค-าอายั�ผ*�ช้มูภาพิยันตัร! ถ่�า อายั�น�อยักว-าห์ร'อเท-าก บ 12 ท"า ราคาตั =ว ราคาตั =ว - ส้-วนลด 40 บาท มู�ฉะน 3น ราคาตั =ว ราคาตั =ว - ส้-วนลด 20 บาท 3. แส้ดงราคาตั =ว จบ

Page 22: Algorithm programming

ราคาตั =ว 120ราคาตั =ว 120

ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 2ข 3นตัอนท�� 2 ถ่-ายัทอดเป�นผ งงาน (flowchart)

เร��มูตั�นเร��มูตั�น

แส้ดงราคาตั =วแส้ดงราคาตั =ว

จบจบ

ราคาตั =ว ราคาตั =ว -20ราคาตั =ว ราคาตั =ว -20

ร บค-าอายั�ผ*�ช้มูภาพิยันตัร!ร บค-าอายั�ผ*�ช้มูภาพิยันตัร!

อายั� ≤ 12อายั� ≤ 12

ราคาตั =ว ราคาตั =ว -40ราคาตั =ว ราคาตั =ว -40

เท6จ จร�ง

Page 23: Algorithm programming

ใบงานทึ�, 1 (งานเด�,ยว) ทึ(าลงในกริะดาษ A4

1 .ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการห์าพิ'3นท��ของร*ปส้��เห์ล��ยัมูผ'นผ�า

2. ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการห์าค-ามูากท��ส้�ดของจ"านวนส้ามูจ"านวน เช้-น กรอก 3, 17, 11 แส้ดงค-า 17 เป�นจ"านวนท��มูากท��ส้�ด

3. ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการร บตั วเลข 1-7 เพิ'�อแส้ดงช้'�อว นในส้ ปดาห์! เช้-น กรอกเลข 1 แส้ดงข�อความูเป�น ว น“อาท�ตัยั! ”

Page 24: Algorithm programming
Page 25: Algorithm programming

อ�างอ�ง

ส้ถ่าบ นส้-งเส้ร�มูการส้อนว�ทยัาศัาส้ตัร!และเทคโนโลยั� . (2556). หน�งสั)อัเริ�ยน ริายว�ช้าพื้)+นฐานเทึคโนโลย�สัาริสันเทึศและ การิสั),อัสัาริ . กระทรวงศั0กษาธี�การ.