Algorithm programming
-
Upload
jaemjan-sriarunrasmee -
Category
Education
-
view
219 -
download
0
Transcript of Algorithm programming
อั�ลกอัริ�ทึ�มและการิเขี�ยนโปริแกริมAlgorithm and Programmingอั�ลกอัริ�ทึ�มและการิเขี�ยนโปริแกริมAlgorithm and Programming
โดย อั.ดริ. แจ่�มจ่�นทึริ� ศริ�อัริ�ณริ�ศม�
หล�กการิแก�ป�ญหา
เส้�นทางจาก A ไปยั ง H เส้�นทางใดใช้�เวลาเด�นทางน�อยัท��ส้�ด
(ตั วเลขแทนเวลาเป�นนาท�)
หล�กการิแก�ป�ญหา
1 . การว�เคราะห์!และก"าห์นดรายัละเอ�ยัดของป#ญห์า
2. การวางแผนในการแก�ป#ญห์า3. การด"าเน�นการแก�ป#ญห์า4. การตัรวจส้อบและปร บปร�ง
หล�กการิแก�ป�ญหา
1 . การว�เคราะห์!และก"าห์นดรายัละเอ�ยัดของป#ญห์า
- ส้��งท��ตั�องการค'ออะไร
- ข�อมู*ลท��ก"าห์นดให์�ค'ออะไร
- พิ�จารณาข�อมู*ลและเง'�อนไขว-าเพิ�ยังพิอท��จะห์าค"าตัอบของป#ญห์าได�ห์ร'อไมู-
หล�กการิแก�ป�ญหา
2. การวางแผนในการแก�ป#ญห์า - เล'อกใช้�เคร'�องมู'อและว�ธี�การเพิ'�อให์�ได�มูา ซึ่0�งค"าตัอบ - ใช้�ประส้บการณ!
- พิ�จารณารายัละเอ�ยัดของส้��งท��ตั�องการห์า ค"าตัอบห์าความูส้ มูพิ นธี!
- อาศั ยัรห์ ส้ล"าลอง (pseudo code) ห์ร'อ ผ งงาน (flowchart) เข�ามูาช้-วยัในการ ถ่-ายัทอดความูค�ด
หล�กการิแก�ป�ญหา
3. การด"าเน�นการแก�ป#ญห์า
เป�นการน"าเคร'�องมู'อและว�ธี�การท��ได�วางแผนไว�ในข 3นตัอนท�� 2 มูาด"าเน�นการแก�ป#ญห์า
หล�กการิแก�ป�ญหา
4. การตัรวจส้อบและปร บปร�ง - ตัรวจส้อบว�ธี�การท��น"ามูาซึ่0�งผลล พิธี!ว-าถ่*กตั�องตัามูรายัละเอ�ยัดของป#ญห์าท��ก"าห์นดไว�ห์ร'อไมู-
- อาจใช้�ว�ธี�การยั�อนกล บไปท"าข 3นตัอนท��ผ-านมูาซึ่"3าๆ เพิ'�อทบทวนห์ร'อปร บปร�งจนกว-าจะได�ค"าตัอบท��ถ่*กตั�อง
Algorithm
อ ลกอร�ท0มู (Algorithm ) ห์มูายัถ่0ง
ข 3นตัอนห์ร'อล"าด บการประมูวลผลในการแก�ป#ญห์าใดป#ญห์าห์น0�ง ห์ร'อล"าด บการท"างานซึ่0�งจะช้-วยัให์�เจ�าของผลงาน ห์ร'อผ*�ท��ส้นใจ ห์ร'อโปรแกรมูเมูอร!เห์6นข 3นตัอนของการท"างาน ช้-วยัตัรวจส้อบความูถ่*กตั�อง และเข�าใจการท"างานได�ง-ายัข03น
หล�กการิเขี�ยน Algorithm
เร�ยังล"าด บความูส้"าค ญของงานท��จะท"า เข�ยันออกมูาในล กษณะภาษาเข�ยัน
ส้ามูารถ่เข�าใจง-ายัมู�ความูละเอ�ยัดของ
โครงส้ร�างพิอส้มูควร
Step 1 Step 2 Step 3
Flow chart
โฟลว!ช้าร!ตั (Flow chart) ห์ร'อผ งงาน ห์มูายัถ่0ง
ผ งแส้ดงข 3นตัอนและล"าด บการท"างานตั-างๆ ในโปรแกรมู โดยัแส้ดงในร*ปของส้ ญล กษณ!และตั วอ กษรประกอบการอธี�บายัในแตั-ละข 3นตัอน
Flow chart
ส้ถ่าบ นมูาตัรฐานแห์-งช้าตั�อเมูร�กา (The American National Standard Institute: ANSI)ได�ก"าห์นดส้ ญล กษณ!ท��เป�นมูาตัรฐานในการเข�ยันผ งงานไว�ตั-างๆ ด งน�3
หล�กการิใช้�สั�ญล�กษณ�ขีอังผั�งงาน
ผ งงาน (Flowchart) ท��เข�ยันข03น ตั�องมู�จ�ดเร��มูตั�น และ จ�ดส้�3นส้�ด (Start and Stop)1
ส้ ญล กษณ!แตั-ละร*ปจะมู�การเช้'�อมูตั-อด�วยั ท�ศัทางการท"างาน (Direction of Flow)
2
ท�ศัทางการท"างานจะตั�องเร��มูตั�นจากจ�ดเร��มูตั�นและจบท��จ�ดส้�3นส้�ดเท-าน 3น3
โคริงสัริ�างการิเขี�ยนผั�งงาน
โคริงสัริ�างแบบล(าด�บ(Sequential Structure)
โคริงสัริ�างแบบล(าด�บ(Sequential Structure)
โคริงสัริ�างแบบม�ทึางเล)อัก(Selection Structure)
โคริงสัริ�างแบบม�ทึางเล)อัก(Selection Structure)
โคริงสัริ�างทึ(าซ้ำ(+า(repetition Structure)
โคริงสัริ�างทึ(าซ้ำ(+า(repetition Structure)
ก�จ่กริริมทึ�, 1 ฝึ.กปฏิ�บ�ติ�
1 .ให์�เข�ยันผ งงานแส้ดงการตั�มูท"าบะห์มู��ก0�งส้"าเร6จร*ป
2. เข�ยันผ งงานแส้ดงการค"านวณห์าพิ'3นท��ร*ปส้ามูเห์ล��ยัมูซึ่0�งมู�การก"าห์นดความูยัาวฐานและความูส้*ง
3. เข�ยันแผนผ งแส้ดงการเด�นทางมูามูห์าว�ทยัาล ยัของตันเอง
การิก(าหนดค�าให�ติ�วแปริ
เป�นการเปล��ยันจากข�อความูเป�นรห์ ส้ล"าลอง ช้-วยัลดความูยัาวของข�อความูเมู'�อมู�การกล-าวซึ่"3า
ห์ลายัคร 3ง ช้-วยัให์�การถ่-ายัทอดความูค�ดกระช้ บ ช้-วยัให์�เข�าใจง-ายั การก"าห์นดจะใช้�ร*ปของตั วอ กษรภาษาอ งกฤษเป�น
ช้'�อข�อมู*ล ณ เวลาห์น0�งๆ ตั วแปรจะมู�ค-าได�เพิ�ยังค-าเด�ยัวเท-าน 3น ตั วแปรส้ามูารถ่เปล��ยันค-าได� ข03นอยั*-ก บการด"าเน�นการ
ก บข�อมู*ลน 3นๆ ได�ด�วยั
การิก(าหนดค�าให�ติ�วแปริ
การก"าห์นดค-าให์�ตั วแปร ส้ามูารถ่ท"าได� 3 ว�ธี�ค'อ
1 .การร บค-าจากภายันอก
2 .การก"าห์นดค-าจากตั วแปรอ'�น
3 .การก"าห์นดค-าจากการค"านวณ
การิก(าหนดค�าให�ติ�วแปริ
ส้ ญล กษณ!ท��ใช้�ส้"าห์ร บการก"าห์นดค-าให์�ตั วแปร
ใช้�เพิ'�อน"าค-าทางขวาของล*กศัร ไปก"าห์นดให์�ก บตั วแปรทางด�านซึ่�ายัของล*กศัร
เช้-น X 2 ห์มูายัถ่0ง น"าค-า 2 ไปใส้- x
a b x c ห์มูายัถ่0ง น"าผลล พิธี!ของ b x c ไปใส้-ไว�ใน a
ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 1
การค"านวณห์าพิ'3นท��ของร*ปส้ามูเห์ล��ยัมู ซึ่0�งมู�การก"าห์นดความูยัาวฐานและความูส้*ง
ข 3นตัอนท�� 1 ถ่-ายัทอดความูค�ดเป�นรห์ ส้ล"าลอง (pseudo code)
เร��มูตั�น 1. ก"าห์นดค-าความูยัาวฐาน 2. ก"าห์นดค-าความูส้*ง
3. ค"านวนพิ'3นท��ร*ปส้ามูเห์ล��ยัมูจากส้*ตัร พิ'3นท�� =½ x ฐาน x ส้*ง
4. แส้ดงผลล พิธี!พิ'3นท�� จบ
ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 1
ข 3นตัอนท�� 2 ถ่-ายัทอดเป�นผ งงาน (flowchart
เร��มูตั�นเร��มูตั�น
แส้ดงผลล พิธี!พิ'3นท��ส้ามูเห์ล��ยัมู
แส้ดงผลล พิธี!พิ'3นท��ส้ามูเห์ล��ยัมู
จบจบ
ค"านวณพิ'3นท��ส้ามูเห์ล��ยัมู ค'อ ½ x ฐาน x ส้*ง
ค"านวณพิ'3นท��ส้ามูเห์ล��ยัมู ค'อ ½ x ฐาน x ส้*ง
ก"าห์นดค-าความูยัาวฐานก"าห์นดค-าความูยัาวฐาน
ก"าห์นดค-าความูส้*งก"าห์นดค-าความูส้*ง
ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 2
ค�ดราคาตั =วภาพิยันตัร! โดยัปกตั�ราคาตั =วภาพิยันตัร!เท-าก บ 120 บาท เน'�องจากเป�นว นครอบคร ว ผ*�ท��มู�อายั�ตั"�ากว-าห์ร'อเท-าก บ 12 ป> จะได�ร บส้-วนลด 40 บาท ถ่�ามู�อายั�มูากกว-าน 3นจะได�ร บส้-วนลด 20 บาท
ข 3นตัอนท�� 1 ถ่-ายัทอดความูค�ดเป�นรห์ ส้ล"าลอง (pseudo code) เร��มูตั�น 1. ก"าห์นดค-าราคาตั =วเท-าก บ 120 บาท 2. ร บค-าอายั�ผ*�ช้มูภาพิยันตัร! ถ่�า อายั�น�อยักว-าห์ร'อเท-าก บ 12 ท"า ราคาตั =ว ราคาตั =ว - ส้-วนลด 40 บาท มู�ฉะน 3น ราคาตั =ว ราคาตั =ว - ส้-วนลด 20 บาท 3. แส้ดงราคาตั =ว จบ
ราคาตั =ว 120ราคาตั =ว 120
ก�จ่กริริมฝึ.กค�ด ฝึ.กปฏิ�บ�ติ� 2ข 3นตัอนท�� 2 ถ่-ายัทอดเป�นผ งงาน (flowchart)
เร��มูตั�นเร��มูตั�น
แส้ดงราคาตั =วแส้ดงราคาตั =ว
จบจบ
ราคาตั =ว ราคาตั =ว -20ราคาตั =ว ราคาตั =ว -20
ร บค-าอายั�ผ*�ช้มูภาพิยันตัร!ร บค-าอายั�ผ*�ช้มูภาพิยันตัร!
อายั� ≤ 12อายั� ≤ 12
ราคาตั =ว ราคาตั =ว -40ราคาตั =ว ราคาตั =ว -40
เท6จ จร�ง
ใบงานทึ�, 1 (งานเด�,ยว) ทึ(าลงในกริะดาษ A4
1 .ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการห์าพิ'3นท��ของร*ปส้��เห์ล��ยัมูผ'นผ�า
2. ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการห์าค-ามูากท��ส้�ดของจ"านวนส้ามูจ"านวน เช้-น กรอก 3, 17, 11 แส้ดงค-า 17 เป�นจ"านวนท��มูากท��ส้�ด
3. ให์�เข�ยันรห์ ส้ล"าลองและผ งงานแส้ดงการร บตั วเลข 1-7 เพิ'�อแส้ดงช้'�อว นในส้ ปดาห์! เช้-น กรอกเลข 1 แส้ดงข�อความูเป�น ว น“อาท�ตัยั! ”