Upload
chamlong-champakul
View
109
Download
2
Embed Size (px)
Citation preview
วชิาพืน้ฐานการเขยีนโปรแกรมคอมพวิเตอร์
เร ือ่งการเขยีนผงังาน
หนว่ยที ่1 ผงังาน
สาระการเรยีนรู ้1. ความหมายของผังงาน2. ประโยชนข์องผังงาน3. สญัลกัษณ์ส าหรับการเขยีนผังงาน4. ลกัษณะการเขยีนผังงาน
จดุประสงคก์ารเรยีนรู ้1. อธบิายความหมายของผังงานได ้2. อธบิายประโยชนข์องผังงานได ้3. บอกสญัลกัษณ์ส าหรับการเขยีนผังงานได ้4. อธบิายวธิกีารใชง้านสญัลกัษณ์ส าหรับการเขยีนผังงานได ้5. อธบิายลกัษณะการเขยีนผังงานได ้
ความหมายของผงังาน
ผังงาน (Flowchart) คอื การเขยีนอธบิายขัน้ตอนวธิกีารท างานในลักษณะของรูปภาพ ประโยชน์ของผังงาน ใชส้ าหรับช่วยในการพัฒนาล าดับขัน้ตอนวิธีการแกปั้ญหา เนื่องจากผังงานเป็นการอธบิายขัน้ตอนวิธกีารท างานในลักษณะของรูปภาพ ท าใหส้ามารถเห็นล าดับของขั ้นตอนวิธีการท างานไดช้ัดเจนกว่าการอธิบายขัน้ตอนวธิกีารท างานในลกัษณะของขอ้ความ
เมือ่ไดผั้งงานทีใ่ชส้ าหรับการแกปั้ญหาทีต่อ้งการแลว้ จากนัน้จงึท าการพัฒนาจากผังงานใหเ้ป็นการอธบิายขัน้ตอนวธิกีารท างานในลักษณะของขอ้ความ รหัสเทียม และโปรแกรมภาษาคอมพวิเตอรท์ีต่อ้งการตามล าดบั
สญัลกัษณ์ส าหรบัการเขยีนผงังาน
1.1 จดุเร ิม่ตน้และจดุสิน้สดุของผงังานสญัลกัษณ์ทีใ่ชส้ าหรับจดุเริม่ตน้และจดุสิน้สดุของผังงาน ใชส้ญัลกัษณ์
รปูสีเ่หลีย่มปลายมมุคลา้ยกบัสนามฟตุบอล ภายสญัลกัษณ์มคี าอธบิายส าหรับบอกวา่เป็นจดุเริม่ตน้หรอืจดุสิน้สดุของผังงาน โดยใชค้ าอธบิาย “Start” หรอื “Begin” หรอืเริม่ตน้ส าหรับจดุเริม่ตน้ของผังงาน และค าอธบิาย “Stop” หรอื “End” หรอืจบ ส าหรับจดุสิน้สดุของผังงาน มสีญัลกัษณ์จดุเริม่ตน้ไดเ้พยีงสญัลกัษณ์เดยีวและมสีญัลกัษณ์จดุสิน้สดุไดเ้พยีงสญัลกัษณ์เดยีวเทา่นัน้
การใชง้านสญัลักษณ์จดุเริม่ตน้และจดุสิน้สดุของผังงาน
Start End
N 5
1.2การก าหนดคา่ การค านวณและการประมวลผลสญัลกัษณ์ทีใ่ชส้ าหรับการก าหนดคา่ (Assignment) การค านวณ
(Computation) และการประมาณผล (Process) ของผังงานใชส้ญัลกัษณ์รปูสีเ่หลีย่มผนืผา้ โดยมคี าอธบิายลกัษณะการท างานอยูภ่ายในรปูสีเ่หลีย่มผนืผา้ สญัลกัษณ์นีม้ทีัง้ทศิทางเขา้และทศิทางอก โดยมเีพยีงทศิทางเขา้ 1 ทศิทางและทศิทางออก 1 ทศิทาง
สญัลักษณ์การก าหนดคา่ การค านวณและการประมวลผล
การเขยีนผังงานนยิมใชเ้ครือ่งหมายลกูศร แทนเครือ่งหมายเทา่กบั ส าหรับการก าหนดคา่หรอืการค านวณ เครือ่งหมายเทา่กบัส าหรับการเขยีนผังงานนยิมใชส้ าหรับการเปรยีบเทยีบความเทา่กนัระหวา่งคา่ 2 คา่
ตวัอยา่ง การใชส้ญัลกัษณ์การก าหนดคา่ การค านวณและการประมวลผล
การใชง้านสญัลกัษณ์ของผังงานส าหรับการก าหนดคา่ใหค้า่ของ N มคีา่เทา่กบั 5
1.3การรบัขอ้มลูเขา้และการน าขอ้มลูออกการรับขอ้มลูเขา้และการน าขอ้มลูออก กรณีไมก่ าหนดอปุกรณ์
ส าหรับการน าขอ้มลูเขา้และการน าขอ้มลูออก สญัลกัษณ์ทีใ่ชค้อืสญัลกัษณ์รปูสีเ่หลีย่มดา้นขนาน ภายในสญัลกัษณ์เป็นค าอธบิายลกัษณะการท างาน โดยใชค้ าอธบิาย “Read” , “Input” หรอื “รับคา่” ส าหรับการรับขอ้มลูเขา้ และใชค้ าอธบิาย “Write” , “Output” , “Print” หรอื “แสดงคา่” ส าหรับการน าขอ้มลูออกสญัลกัษณ์นีม้ทีัง้ทศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง
สญัลักษณ์การน าขอ้มลูเขา้และขอ้มลูอกโดยไมก่ าหนดอปุกรณ์
ตวัอยา่ง การใชส้ญัลกัษณ์การน าขอ้มลูเขา้และการน าขอ้มลูออกโดยไม่ก าหนดอปุกรณ์
การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANS
Write ANS
1.4การรบัขอ้มลูเขา้ทางแป้นพมิพ์สญัลกัษณ์ของผังงานทีใ่ชส้ าหรับการรับขอ้มลูเขา้ทางแป้นพมิพ ์
ภายในสญัลกัษณ์ คอื ตวัแปรทีใ่ชส้ าหรับรับคา่ขอ้มลูทีรั่บเขา้มาจากแป้นพมิพ ์สญัลกัษณ์ส าหรับการรับขอ้มลูเขา้จากแป้นพมิพม์ทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง
สญัลักษณ์การรับขอ้มลูเขา้ทางแป้นพมิพ์
ตวัอยา่ง การใชส้ญัลกัษณ์การรับขอ้มลูเขา้ทางแป้นพมิพ ์(Keyboard)
การใชง้านสญัลกัษณ์ของผังงานส าหรับการรับคา่จากแป้นพมิพ์จ านวน 2 คา่มาเก็บไว ้ในตวัแปร A และตวัแปร B โดยคา่ที ่1 ถกูน าไปเก็บไว ้ในตวัแปร A และคา่ที ่2 ถกูน าไปเก็บไวใ้นตวัแปร B
A,B
1.5 การแสดงผลขอ้มลูออกทางจอภาพสญัลกัษณ์ส าหรับการแสดงผลขอ้มลูออกทางจอภาพของผังงาน ใช ้
สญัลกัษณ์ โดยเขยีนขอ้มลูทีต่อ้งการแสดงผลออกสูจ่อภาพอยูภ่ายในสญัลกัษณ์นี ้สญัลกัษณ์ทีใ่ชส้ าหรับการแสดงผลขอ้มลูออกทางจอภาพมทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง
สญัลักษณ์การแสดงผลขอ้มลูออกทางจอภาพ
ตวัอยา่ง การใชส้ญัลกัษณ์การแสดงผลขอ้มลูออกทางจอภาพ
การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANS ออกทางจอภาพ
ANS
1.6 การแสดงผลขอ้มลูออกทางเครือ่งพมิพ์สญัลกัษณ์ของผังงานส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ ์
ใชส้ญัลกัษณ์ โดยเขยีนขอ้มลูทีต่อ้งการแสดงผลออกทางเครือ่งพมิพอ์ยูภ่ายในสญัลกัษณ์นี ้สญัลกัษณ์ทีใ่ชส้ าหรับการแสดงขอ้มลูออกทางเครือ่งพมิพม์ทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง
สญัลักษณ์ส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ์
ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ์
การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANSออกทางเครือ่งพมิพ์
ANS
1.7 การตดิตอ่กบัอปุกรณท์ีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบัอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบั เชน่ เทปแมเ่หล็ก
สญัลกัษณ์ของผังงานส าหรับการตดิตอ่อปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบั ใชใ้นกรณีทีต่อ้งการบนัทกึขอ้มลูลงเทปแมเ่หล็กหรอืตอ้งการอา่นขอ้มลูจากเทปแมเ่หล็ก
สญัลักษณ์ส าหรับการตดิตอ่กบัอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดับ
1.8การตดิตอ่กบัอปุกรณท์ีเ่ป็นการเขา้ถงึขอ้มลูแบบตรงอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบตรง เชน่ จานบนัทกึขอ้มลู (Disc)
สญัลกัษณ์ทีใ่ชใ้นการตดิตอ่กบัอปุกรณ์ทีเ่ป็นจานบนัทกึขอ้มลูใชส้ญัลกัษณ์ใช ้
ในกรณีทีต่อ้งการบนัทกึขอ้มลูลงจานบนัทกึขอ้มลูหรอือา่นขอ้มลูจากจานบนัทกึขอ้มลู
สญัลักษณ์ส าหรับการตดิตอ่อปุกรณ์ทีเ่ป็นจานบันทกึขอ้มลู
1.9 การตดัสนิใจสญัลกัษณ์การตดัสนิใจใชส้ าหรับตรวจสอบเงือ่นไข เพือ่ตดัสนิใจเลอืก
กระท าขัน้ตอนการท างานทีต่อ้งท าเป็นล าดบัถัดไป สญัลกัษณ์ของผังงานทีใ่ช ้
ส าหรับการตดัสนิใจเครือ่งหมายสีเ่หลีย่มขนมเปียกปนู โดยมเีงือ่นไขส าหรับการตดัสนิใจอยูภ่ายในสญัลกัษณ์ สญัลกัษณ์การตดัสนิใจมกีารใชง้านในผังงานทีม่ีการท างานแบบเลอืกท า และการท างานแบบท าซ ้า
สญัลักษณ์ส าหรับการตัดสนิใจ
ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับการตดัสนิใจ
จากสญัลกัษณ์การตดัสนิใจขัน้ตอนการท างาน คอื พจิารณาคา่ของ X
ถา้คา่ของ X ขณะนัน้มคีา่มากกวา่ 15 ขัน้ตอนการท างานทีต่อ้งการท าในล าดบัถัดไป คอื การท างานในทศิทางทีม่ตีวัอกัษร “Y” ก ากบั ถา้คา่ของ X ขณะนัน้ไม่มากกวา่ 15 คอื นอ้ยกวา่หรอืเทา่กบั 15 ขัน้ตอนการท างานทีต่อ้งท าเป็นล าดบัถัดไป คอื การท างานในทศิทางทีม่ตีวัอกัษร “N” ก ากบั
15XY N
1.10 การแสดงทศิทางการท างานของผงังานการแสดงทศิทางของขัน้ตอนการท างานของผังงาน ใชล้กูศรส าหรับ
การบอกทศิทางของขัน้ตอนการท างาน การใชล้กูศรแสดงทศิทางของขัน้ตอนการท างานนยิมเขยีนจากดา้นบนลงดา้นลา่งหรอืจากดา้นซา้ยไปดา้นขวา ลกูศรทีช่ ีเ้ขา้สูส่ญัลกัษณ์ของผังงานนยิมเขยีนลกูศรชีเ้ขา้ดา้นบนของสญัลกัษณ์ และลกูศรทีช่ ีอ้อกจากสญัลกัษณ์ของผังงานนยิมเขยีนลกูศรชีอ้อกทางดา้นลา่งของสญัลกัษณ์
สญัลักษณ์การแสดงทศิทางการท างานของผังงาน
การเขยีนเสน้ของลกูศรแสดงทศิทางการไหลของผังงานไมน่ยิมเขยีน
เสน้ตดักนั ถา้มขีัน้ตอนการท างานทีต่อ้งเขยีนเสน้ตดักนั ตอ้งพยายามเลีย่งโดยการปรับรปูของโครงสรา้งผังงานใหมห่รอืใชเ้ครือ่งหมายจดุตอ่ชว่ยในการเขยีนผังงาน
ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับแสดงทศิทางการท างานของผังงาน
ล าดบัขัน้ตอนการท างานของผังงาน คอื ขัน้ตอนแรก ท าการรับคา่ขอ้มลูเขา้มาเก็บไวใ้นตวัแปร A และ B จากนัน้ท าขัน้ตอนของการค านวณคา่ของ A บวกดว้ยคา่ของ B จากนัน้น าผลทีไ่ดไ้ปเก็บไวใ้นตวัแปร X
Read A,B
X = A + B
1.11 จดุตอ่ภายในหนา้เดยีวกนัสญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั ใชส้ าหรับเชือ่มการท างานของ
ผังงานทีอ่ยูใ่นหนา้เดยีวกนั สญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนัใช ้
สญัลกัษณ์ของวงกลม ภายในวงกลมระบหุมายเลขของจดุทีต่อ้งการตอ่เชือ่มถงึกนั จดุตอ่แตล่ะจดุตอ้งมคีูท่ีต่อ้งการเชือ่มถงึกนัเสมอการใชส้ญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั ใชใ้นกรณีทีเ่สน้ส าหรับแสดงทศิทางการท างานของผังงานมคีวามยาวมาก หรอืมจีดุตดัของเสน้ทีใ่ชแ้สดงทศิทางการท างานเกดิขึน้ เพือ่ลดความซบัซอ้นของเสน้ทีใ่ชแ้สดงขัน้ตอนการท างานของผังงาน ท าใหส้ามารถเห็นล าดบัขัน้ตอนการท างานไดอ้ยา่งไม่สบัสน
สญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั
ตวัอยา่ง การใชส้ญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั
แสดงเครือ่งหมายจดุตอ่ภายในหนา้เดยีวกนัหมายเลข 1 โดยทีต่ัง้ 2 จดุตอ้งอยูห่นา้เดยีวกนั การท างานของผังงานเสมอืนวา่สองจดุนี้คอืจดุเดยีวกนั และเชือ่มตอ่ถงึกนั
1 1
1.12 จดุตอ่ระหวา่งหนา้สญัลกัษณ์จดุตอ่ระหวา่งหนา้ของผังงานใชส้ญัลกัษณ์รปูหา้เหลีย่ม
สญัลกัษณ์จดุตอ่ระหวา่งหนา้ใชส้ าหรับเชือ่มการท างานของผังงานทีอ่ยูต่า่งหนา้กนั ภายในสญัลกัษณ์ระบหุมายเลขของจดุทีต่อ้งการตอ่เชือ่มถงึกนั จดุตอ่แตล่ะจดุตอ้งคูท่ีต่อ้งการเชือ่มถงึกนัเสมอ
การใชง้านของสญัลกัษณ์จดุตอ่ระหวา่งหนา้ มกีารใชง้านเหมอืนกบัจดุตอ่ภายในหนา้เดยีวกนั ตา่งกนัเพยีงใชส้ าหรับเชือ่มตอ่จดุทีอ่ยูต่า่งหนา้กนั
สญัลักษณ์จดุตอ่ระหวา่งหนา้
ตวัอยา่งที ่1.9การใชส้ญัลกัษณ์จดุตอ่ระหวา่งหนา้
แสดงเครือ่งหมายจดุตอ่ระหวา่งหนา้หมายเลข 1 โดยทีท่ัง้ 2 จดุตอ้งอยูต่า่ง
หนา้กนัการท างานของผังงานเสมอืนวา่สองจดุนีค้อืจดุเดยีวกนั และเชือ่มตอ่ถงึกนั
11
ลกัษณะการเขยีนผงังาน
ลกัษณะของผังงานทีด่ ีควรมลีกัษณะดงันีไ้ปนี้1. ทกุผังงานตอ้งมจีดุเริม่ตน้และจดุสิน้สดุเพยีงอยา่งละหนึง่แหง่
เทา่นัน้2. ทกุสญัลกัษณ์ของผังงานตอ้งมลีกูศรชีท้ศิทางเขา้ และลกูศร
ชีท้ศิทางออกอยา่งละหนึง่ลกูศรยกเวน้สญัลกัษณ์จุดเริม่ตน้ สญัลกัษณ์จดุสิน้สดุ สญัลกัษณ์การตดัสนิใจ และสญัลกัษณ์จดุตอ่
3. สญัลกัษณ์จดุเริม่ตน้มเีฉพาะลกูศรชีท้ศิทางออก สญัลกัษณ์จดุสิน้สดุมเีฉพาะลกูศรชีท้ศิทางเขา้
4. สญัลกัษณ์การตดัสนิใจมลีกูศรชีท้ศิทางเขา้ 1 ทศิทาง มีลกูศรชีท้ศิทางออก 2 ทศิทาง คอื กรณีทีผ่ลทีไ่ดจ้ากการตดัสนิใจเป็นจรงิ และกรณีทีผ่ลทีไ่ดจ้ากการตดัสนิใจเป็นเท็จ
ลกัษณะการเขยีนผงังาน
5. ทศิทางของล าดบัขัน้ตอนการท างาน นยิมเขยีนจากบนลงลา่งหรอืจากซา้ยไปขวา
6. เสน้ของลกูศรทีใ่ชบ้อกทศิทางของล าดบัขัน้ตอนวธิกีารท างาน ไมค่วรเขยีนตดักนัหรอืทับกนั
7. ไมค่วรเขยีนเสน้ของลกูศรเพือ่ท าการเชือ่มโยงล าดบัขัน้ตอนทีอ่ยูห่า่งกนัมากหากจ าเป็นควรใชส้ญัลกัษณ์จดุตอ่แทน
8. การเขยีนผังงานในสว่นของการก าหนดคา่หรอืค านวณคา่นยิมใชเ้ครือ่งหมายลกูศรแทนการใชเ้ครือ่งหมายเทา่กบั เชน่ , สว่นเครือ่งหมายเทา่กบันยิมใชส้ าหรับการเปรยีบเทยีบคา่