Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore unit02

unit02

Published by wiraya_srikarw, 2019-02-20 21:04:50

Description: unit02

Search

Read the Text Version

LOGO การออกแบบและพฒั นาโปรแกรม (Program Design and Development) นางสาววริ ยา สขี าว

1. การวเิ คราะหปญ หา การวเิ คราะหป ญหา ขอมูลท่ีนําเขาสูร ะบบคอมพวิ เตอร ประกอบดวยอะไรบาง วเิ คราะหผ ลลพั ธ วเิ คราะห Input Process เขียนขั้นตอนการแกปญหา 2

อลั กอรทิ ึม (Algorithms) หมายถึง ขน้ั ตอนวิธี ซ่งึ จะอธิบายวางาน ๆ น้ัน ทาํ อยางไร โดยจะประกอบดวยชดุ ลําดบั เปน ขั้น เปนตอนที่ชัดเจน และไดผลลพั ธที่ถูกตอ งตาม ตองการ

วธิ ีการสรา ง Algorithms ในการสรา งอลั กอริทึมเพอ่ื ใชง านทางคอมพวิ เตอร สามารถ สรา งไดห ลายวธิ ีดว ยกัน โดยในท่ีนี้จะขอกลา วถึงวธิ ตี าง ๆ ดงั ตอ ไปน้ี การบรรยาย (Narrative Description) การเขยี นรหัสจําลอง (Pseudo Code) การเขียนผังงาน (Flowchart)

เปน วิธที ่วี าดวยการใชคาํ พดู บรรยายเปนตวั อักษร ซ่ึงวธิ ีน้ี จะคอนขางจะงา ยสําหรับตวั ผเู ขียน แตจะยากตอการ นําไปใชปฏบิ ตั ิ เน่ืองจากอาจะกอใหเกดิ ปญหาตาง ๆไมวา จะเปนขอบเขตการบรรยายทก่ี วางเกนิ ไป ยืดเย้ือเกินไป รวมถึงการบรรยายทีย่ ากตอความเขา ใจ

การเขียนรหัสจาํ ลอง (Pseudo Code) รหัสเทียม หรอื ซูโดโคด (Pseudo Code) คือ รหสั จาํ ลอง ทีใ่ ชเ ปน ตัวแทนของอลั กอริทึม โดยมถี อ ยคําหรือประโยค คาํ สั่งท่เี ขยี นอยใู นรปู แบบของภาษาอังกฤษท่ีไมข น้ึ กบั ภาษาคอมพวิ เตอรใดภาษาหน่ึง หรอื จะใชภาษาไทยก็ได แตก็ยงั คงไวซ่ึงขั้นตอนการทํางานหลัก ๆ ของโปรแกรม เอาไว โดยไมตองเจาะรายละเอียดการทาํ งานในแตล ะสวน

รหสั เทียม คาํ ส่ังในภาษาปาสคาลท่ีนาํ ไปเขยี นรหัสเทยี ม เบื้องตน  Begin ความหมาย เรมิ่ ตน  Read ความหมาย รบั คา , อานคา  Write ความหมาย แสดงคา  End ความหมาย จบการทํางาน

โครงสรา งควบคมุ การทํางาน (Control Structure) มี รปู แบบพ้นื ฐาน 3 ลักษณะคือ  โครงสรา งควบคมุ การทํางานแบบลําดบั ขน้ั  โครงสรางควบคุมการทาํ งานแบบทางเลือก  โครงสรา งควบคุมการทาํ งานแบบทําซาํ้ 8

สญั ลกั ษณใ นผังงาน Terminator สญั ลักษณแ สดงจดุ เร่ิมตนหรือจุดสิน้ สดุ Start/Stop, Begin/end โดยจดุ เริ่มตน จะมเี สน ทางออกเพียงอยางเดยี ว สว นจดุ สิ้นสุดจะมีเสนทางเขาเพยี งอยางเดียว Flow lines ลกู ศรแสดงทิศทางการทํางาน และการไหล ของขอมลู ,ลาํ ดับข้นั ตอนการทาํ งาน

สญั ลักษณในผังงาน Input/output แทนการนําเขา/แสดงขอ มูล โดยไมระบุชนิด ของสอื่ Manual input สญั ลกั ษณท่ใี ชแ ทนการรับขอมูลทางแปน พมิ พ หรือ Keyboard

สัญลกั ษณใ นผังงาน Process ใชแสดงการประมวลผล การคํานวณ หรือการกาํ หนดคา ขอ มลู ตา ง ๆ ใหนกั ศกึ ษา บอกความแตกตางระหวาง input กบั Process รับคาขอมูลความกวาง Read W กาํ หนดคา ความกวา งเทากับ 4 W =4 รบั คาขอมูลของรศั มวี งกลม Read r พ้ืนท่วี งกลมคอื 3.14*r*r Area=3.14*r*r

สัญลกั ษณใ นผังงาน Decision สัญลกั ษณท ใ่ี ชสาํ หรบั การสรางเง่อื นไข เพ่อื ตัดสินใจทางเลือกทตี่ อ งการ Preparation แทนการทํางานเปนรอบ (loop)

สัญลกั ษณใ นผังงาน Predefined Process ใชแ สดงแทนการประมวลผลของโมดลู หรือโปรแกรมยอย

สญั ลกั ษณใ นผงั งาน Display เปนสญั ลักษณท ใ่ี ชส ําหรับการแสดงผล ขอ มลู ออกทางจอภาพ Document สัญลกั ษณเ พอื่ สง output หรือรายงาน ออกทางเครื่องพมิ พ( ลงบนกระดาษ)

สัญลกั ษณในผงั งาน Magnetic Tape ใชในการจดั เก็บลงบนสื่อประเภทเทปแมเหลก็ Magnetic Disk ใชใ นการจัดเกบ็ ลงบน Disk

สญั ลกั ษณในผังงาน On-Page Reference เปนสัญลกั ษณท่นี ํามาใชแทนจุดเชื่อมโยงของ แผนภาพ(ผังงาน)ในหนาเดยี วกนั off-page Reference เปนสญั ลกั ษณท ่ีใชแ ทนการเช่ือมโยงจาก จดุ เชอ่ื มจากหนาหน่ึงไปยังอีกหนาหนึ่ง (ในกรณที ีอ่ ยูค นละหนา )

หลักการเขยี นโปรแกรมเบื้องตน ผงั งาน (FLOWCHART) สัญลกั ษณท ีใ่ ชในการเขยี นผงั งาน 1. สัญลักษณป ลายทาง (TERMINAL) ตวั อยาง START STOP

หลกั การเขยี นโปรแกรมเบือ้ งตน ผงั งาน (FLOWCHART) สัญลักษณที่ใชใ นการเขียนผงั งาน 2. สญั ลักษณกระบวนการ (PROCESS) ตัวอยาง Y = 5+3 X = 8

หลักการเขยี นโปรแกรมเบอ้ื งตน ผงั งาน (FLOWCHART) สญั ลกั ษณท ีใ่ ชใ นการเขียนผงั งาน 3. สญั ลักษณต ดิ ตอกบั ผใู ชโ ดยการรบั ขอ มูล ตัวอยาง หรอื แสดงผล (INPUT/OUTPUT) INPUT PRICE

หลักการเขียนโปรแกรมเบื้องตน ผงั งาน (FLOWCHART) สัญลักษณท่ีใชในการเขยี นผังงาน 4. สัญลกั ษณการตัดสนิ ใจหรอื การเลือก (DECISION, SELECTION) ตัวอยา ง N PRICE > 100 Y

หลักการเขียนโปรแกรมเบ้อื งตน ผงั งาน (FLOWCHART) สญั ลกั ษณท่ีใชใ นการเขยี นผังงาน 5. สญั ลกั ษณเ สน ทางการการทาํ งานถดั ไป ตัวอยาง (FLOWLINES) INPUT PRICE Pay=Price+Tax

หลักการเขียนโปรแกรมเบื้องตน ผงั งาน (FLOWCHART) สญั ลักษณท ่ีใชใ นการเขียนผงั งาน 6. สญั ลกั ษณจ ดุ เชอื่ ม (CONNECTOR) ตัวอยาง N Choice > 0 Y Salary

โครงสรางการทํางานแบบลําดับ (Sequence)  โครงสรางลําดบั  หลักการใหมองงานเปน ชนิ้ ใหญก อน ยงั ไมต องลงรายละเอยี ด แลวจัดลําดับความคดิ วาจะทาํ อะไร กอนหรือหลงั ตามลาํ ดบั งาน 1 Begin งาน 1 งาน 2 งาน 2 ผังงาน end รหัสเทยี ม 23

ตวั อยางท่ี 1 โจทย จงเขียนโปรแกรมคาํ นวณพืน้ ที่สามเหลี่ยม โดยรับคาความยาวฐานและความสงู จากผใู ช 1. สงิ่ ที่โจทยต อ งการ : พ้นื ทสี่ ามเหล่ียม 2. รปู แบบผลลัพธ ปอนคา ความสูง => <รอรับคา ความสูง> ปอ นคาความยาวฐาน => <รอรับคาความยาวฐาน> พน้ื ท่สี ามเหลีย่ ม => <แสดงคาพืน้ ท่สี ามเหลีย่ ม>

วธิ กี ารประมวลผล ½ x ความยาวฐาน x ความสงู ตัวแปร Area พ้นื ทส่ี ามเหลย่ี ม Height ความสงู Base ความยาวฐาน

ตวั อยางที่ 1 วธิ กี ารเขยี นแบบบรรยาย 1. เรม่ิ ตน 2. รับคา จากตัวแปร Height , Base 3. คาํ นวณ Area = 0.5 * Height * Base 4. พมิ พคา Area 5. จบการทํางาน

ตวั อยางที่ 1 วธิ ีการเขียนแบบบรรยาย 1. เริ่มตน 2. รบั คา จากตัวแปร Height , Base 3. คาํ นวณ Area = 0.5 * Height * Base 4. พมิ พค า Area 5. จบการทาํ งาน

วธิ ีการเขยี นรหสั เทียม 1. Begin 2. Read Height , Base 3. Area = 0.5 * Height * Base 4. Write Area 5. End.

การพัฒนาอลั กอรทิ ึม start Read Height , Base Area = 0.5 * Height * Base Write Area stop 29

ใหนกั ศกึ ษา เขยี นขนั้ ตอนการทํางานแบบลาํ ดบั  การหาคา ดชั นีมวลกาย BMI

คํานวณ ดชั นีมวลกายใหแ สดงผลออกทางจอภาพ สิง่ ที่โจทยต องการ การคํานวณดัชนมี วลกาย รปู แบบผลลพั ธ แสดงดชั นมี วลกายออกทางจอภาพ ขอมลู เขา ความสูง (เมตร) , น้ําหนัก (กโิ ลกรม) กําหนดใหค า ตัวแปร H = ความสูง , W=นา้ํ หนัก ,BMI=ดชั นมี วลกาย วธิ ีการประมวลผล ดชั นมี วลกาย= น้ําหนัก/สว นสูง ^2

ขน้ั ตอนการเขยี นบรรยาย 1. เริม่ ตน 2. รบั คา ความสงู , นํ้าหนัก 3. คํานวณ ดชั นมี วลกาย= นํา้ หนกั /สวนสงู (เมตร) ^2 4. แสดงคา ดัชนมี วลกาย 5. จบการทาํ งาน

รหัสเทยี ม Begin 1.begin Read H , W 2. Read H , W BMI=W/H*H 3. BMI=W/H*H Write BMI 4. write BMI End 5. End

1. รานคา แหง หนงึ่ ตอ งการหา เงินท่ีตอ งจา ย (Paymoney) เมื่อ รวมภาษี 7% (Vat) โดยรบั คา จํานวนสินคา (Quantity) ราคา สนิ คา (Price) เพ่ือหาราคาสนิ คารวม (SumPrice ) เมอื่ ลกู คาซอ้ื สนิ คา จากราน  2. รา นสขุ สบายตอ งการหา สวนลด (Discount) 10% เม่ือ ลกู คา ซอื้ สนิ คา โดยรบั คา จาํ นวนสนิ คา (Quantity) ราคาสนิ คา (Price) เพ่ือหาราคาสินคา รวม (SumPrice ) เมื่อลูกคา ซ้อื สินคา จากราน พรอ มคาํ นวณ เงนิ ทีต่ อ งจาย (Paymoney)  3. บรษิ ัท ใจดี ตองการคาํ นวณหา เงินเดอื นสุทธิของพนกั งาน โดยคดิ จาก เงินเดือน , โบนสั 20%ของเงนิ เดอื น , คาประกนั สังคม คิด 5%ของ เงินเดอื น และคา ลวงเวลา โดยใหค า ลวงเวลาชว่ั โมงละ 100 บาท 


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook