18
วิชาพื้นฐานการเขียนโปรแกรมคอมพิวเตอร์ เรื่องการเขียนผังงาน หน่วยที1 ผ ังงาน

Ppt 01

Embed Size (px)

Citation preview

Page 1: Ppt 01

วชิาพืน้ฐานการเขยีนโปรแกรมคอมพวิเตอร์

เร ือ่งการเขยีนผงังาน

หนว่ยที ่1 ผงังาน

Page 2: Ppt 01

สาระการเรยีนรู ้1. ความหมายของผังงาน2. ประโยชนข์องผังงาน3. สญัลกัษณ์ส าหรับการเขยีนผังงาน4. ลกัษณะการเขยีนผังงาน

จดุประสงคก์ารเรยีนรู ้1. อธบิายความหมายของผังงานได ้2. อธบิายประโยชนข์องผังงานได ้3. บอกสญัลกัษณ์ส าหรับการเขยีนผังงานได ้4. อธบิายวธิกีารใชง้านสญัลกัษณ์ส าหรับการเขยีนผังงานได ้5. อธบิายลกัษณะการเขยีนผังงานได ้

Page 3: Ppt 01

ความหมายของผงังาน

ผังงาน (Flowchart) คอื การเขยีนอธบิายขัน้ตอนวธิกีารท างานในลักษณะของรูปภาพ ประโยชน์ของผังงาน ใชส้ าหรับช่วยในการพัฒนาล าดับขัน้ตอนวิธีการแกปั้ญหา เนื่องจากผังงานเป็นการอธบิายขัน้ตอนวิธกีารท างานในลักษณะของรูปภาพ ท าใหส้ามารถเห็นล าดับของขั ้นตอนวิธีการท างานไดช้ัดเจนกว่าการอธิบายขัน้ตอนวธิกีารท างานในลกัษณะของขอ้ความ

เมือ่ไดผั้งงานทีใ่ชส้ าหรับการแกปั้ญหาทีต่อ้งการแลว้ จากนัน้จงึท าการพัฒนาจากผังงานใหเ้ป็นการอธบิายขัน้ตอนวธิกีารท างานในลักษณะของขอ้ความ รหัสเทียม และโปรแกรมภาษาคอมพวิเตอรท์ีต่อ้งการตามล าดบั

Page 4: Ppt 01

สญัลกัษณ์ส าหรบัการเขยีนผงังาน

1.1 จดุเร ิม่ตน้และจดุสิน้สดุของผงังานสญัลกัษณ์ทีใ่ชส้ าหรับจดุเริม่ตน้และจดุสิน้สดุของผังงาน ใชส้ญัลกัษณ์

รปูสีเ่หลีย่มปลายมมุคลา้ยกบัสนามฟตุบอล ภายสญัลกัษณ์มคี าอธบิายส าหรับบอกวา่เป็นจดุเริม่ตน้หรอืจดุสิน้สดุของผังงาน โดยใชค้ าอธบิาย “Start” หรอื “Begin” หรอืเริม่ตน้ส าหรับจดุเริม่ตน้ของผังงาน และค าอธบิาย “Stop” หรอื “End” หรอืจบ ส าหรับจดุสิน้สดุของผังงาน มสีญัลกัษณ์จดุเริม่ตน้ไดเ้พยีงสญัลกัษณ์เดยีวและมสีญัลกัษณ์จดุสิน้สดุไดเ้พยีงสญัลกัษณ์เดยีวเทา่นัน้

การใชง้านสญัลักษณ์จดุเริม่ตน้และจดุสิน้สดุของผังงาน

Start End

Page 5: Ppt 01

N 5

1.2การก าหนดคา่ การค านวณและการประมวลผลสญัลกัษณ์ทีใ่ชส้ าหรับการก าหนดคา่ (Assignment) การค านวณ

(Computation) และการประมาณผล (Process) ของผังงานใชส้ญัลกัษณ์รปูสีเ่หลีย่มผนืผา้ โดยมคี าอธบิายลกัษณะการท างานอยูภ่ายในรปูสีเ่หลีย่มผนืผา้ สญัลกัษณ์นีม้ทีัง้ทศิทางเขา้และทศิทางอก โดยมเีพยีงทศิทางเขา้ 1 ทศิทางและทศิทางออก 1 ทศิทาง

สญัลักษณ์การก าหนดคา่ การค านวณและการประมวลผล

การเขยีนผังงานนยิมใชเ้ครือ่งหมายลกูศร แทนเครือ่งหมายเทา่กบั ส าหรับการก าหนดคา่หรอืการค านวณ เครือ่งหมายเทา่กบัส าหรับการเขยีนผังงานนยิมใชส้ าหรับการเปรยีบเทยีบความเทา่กนัระหวา่งคา่ 2 คา่

ตวัอยา่ง การใชส้ญัลกัษณ์การก าหนดคา่ การค านวณและการประมวลผล

การใชง้านสญัลกัษณ์ของผังงานส าหรับการก าหนดคา่ใหค้า่ของ N มคีา่เทา่กบั 5

Page 6: Ppt 01

1.3การรบัขอ้มลูเขา้และการน าขอ้มลูออกการรับขอ้มลูเขา้และการน าขอ้มลูออก กรณีไมก่ าหนดอปุกรณ์

ส าหรับการน าขอ้มลูเขา้และการน าขอ้มลูออก สญัลกัษณ์ทีใ่ชค้อืสญัลกัษณ์รปูสีเ่หลีย่มดา้นขนาน ภายในสญัลกัษณ์เป็นค าอธบิายลกัษณะการท างาน โดยใชค้ าอธบิาย “Read” , “Input” หรอื “รับคา่” ส าหรับการรับขอ้มลูเขา้ และใชค้ าอธบิาย “Write” , “Output” , “Print” หรอื “แสดงคา่” ส าหรับการน าขอ้มลูออกสญัลกัษณ์นีม้ทีัง้ทศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง

สญัลักษณ์การน าขอ้มลูเขา้และขอ้มลูอกโดยไมก่ าหนดอปุกรณ์

ตวัอยา่ง การใชส้ญัลกัษณ์การน าขอ้มลูเขา้และการน าขอ้มลูออกโดยไม่ก าหนดอปุกรณ์

การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANS

Write ANS

Page 7: Ppt 01

1.4การรบัขอ้มลูเขา้ทางแป้นพมิพ์สญัลกัษณ์ของผังงานทีใ่ชส้ าหรับการรับขอ้มลูเขา้ทางแป้นพมิพ ์

ภายในสญัลกัษณ์ คอื ตวัแปรทีใ่ชส้ าหรับรับคา่ขอ้มลูทีรั่บเขา้มาจากแป้นพมิพ ์สญัลกัษณ์ส าหรับการรับขอ้มลูเขา้จากแป้นพมิพม์ทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง

สญัลักษณ์การรับขอ้มลูเขา้ทางแป้นพมิพ์

ตวัอยา่ง การใชส้ญัลกัษณ์การรับขอ้มลูเขา้ทางแป้นพมิพ ์(Keyboard)

การใชง้านสญัลกัษณ์ของผังงานส าหรับการรับคา่จากแป้นพมิพ์จ านวน 2 คา่มาเก็บไว ้ในตวัแปร A และตวัแปร B โดยคา่ที ่1 ถกูน าไปเก็บไว ้ในตวัแปร A และคา่ที ่2 ถกูน าไปเก็บไวใ้นตวัแปร B

A,B

Page 8: Ppt 01

1.5 การแสดงผลขอ้มลูออกทางจอภาพสญัลกัษณ์ส าหรับการแสดงผลขอ้มลูออกทางจอภาพของผังงาน ใช ้

สญัลกัษณ์ โดยเขยีนขอ้มลูทีต่อ้งการแสดงผลออกสูจ่อภาพอยูภ่ายในสญัลกัษณ์นี ้สญัลกัษณ์ทีใ่ชส้ าหรับการแสดงผลขอ้มลูออกทางจอภาพมทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง

สญัลักษณ์การแสดงผลขอ้มลูออกทางจอภาพ

ตวัอยา่ง การใชส้ญัลกัษณ์การแสดงผลขอ้มลูออกทางจอภาพ

การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANS ออกทางจอภาพ

ANS

Page 9: Ppt 01

1.6 การแสดงผลขอ้มลูออกทางเครือ่งพมิพ์สญัลกัษณ์ของผังงานส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ ์

ใชส้ญัลกัษณ์ โดยเขยีนขอ้มลูทีต่อ้งการแสดงผลออกทางเครือ่งพมิพอ์ยูภ่ายในสญัลกัษณ์นี ้สญัลกัษณ์ทีใ่ชส้ าหรับการแสดงขอ้มลูออกทางเครือ่งพมิพม์ทีศิทางเขา้และทศิทางออกอยา่งละ 1 ทศิทาง

สญัลักษณ์ส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ์

ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับการแสดงผลขอ้มลูออกทางเครือ่งพมิพ์

การใชง้านสญัลกัษณ์ของผังงานส าหรับการแสดงคา่ของตวัแปร ANSออกทางเครือ่งพมิพ์

ANS

Page 10: Ppt 01

1.7 การตดิตอ่กบัอปุกรณท์ีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบัอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบั เชน่ เทปแมเ่หล็ก

สญัลกัษณ์ของผังงานส าหรับการตดิตอ่อปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดบั ใชใ้นกรณีทีต่อ้งการบนัทกึขอ้มลูลงเทปแมเ่หล็กหรอืตอ้งการอา่นขอ้มลูจากเทปแมเ่หล็ก

สญัลักษณ์ส าหรับการตดิตอ่กบัอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบล าดับ

1.8การตดิตอ่กบัอปุกรณท์ีเ่ป็นการเขา้ถงึขอ้มลูแบบตรงอปุกรณ์ทีเ่ป็นการเขา้ถงึขอ้มลูแบบตรง เชน่ จานบนัทกึขอ้มลู (Disc)

สญัลกัษณ์ทีใ่ชใ้นการตดิตอ่กบัอปุกรณ์ทีเ่ป็นจานบนัทกึขอ้มลูใชส้ญัลกัษณ์ใช ้

ในกรณีทีต่อ้งการบนัทกึขอ้มลูลงจานบนัทกึขอ้มลูหรอือา่นขอ้มลูจากจานบนัทกึขอ้มลู

สญัลักษณ์ส าหรับการตดิตอ่อปุกรณ์ทีเ่ป็นจานบันทกึขอ้มลู

Page 11: Ppt 01

1.9 การตดัสนิใจสญัลกัษณ์การตดัสนิใจใชส้ าหรับตรวจสอบเงือ่นไข เพือ่ตดัสนิใจเลอืก

กระท าขัน้ตอนการท างานทีต่อ้งท าเป็นล าดบัถัดไป สญัลกัษณ์ของผังงานทีใ่ช ้

ส าหรับการตดัสนิใจเครือ่งหมายสีเ่หลีย่มขนมเปียกปนู โดยมเีงือ่นไขส าหรับการตดัสนิใจอยูภ่ายในสญัลกัษณ์ สญัลกัษณ์การตดัสนิใจมกีารใชง้านในผังงานทีม่ีการท างานแบบเลอืกท า และการท างานแบบท าซ ้า

สญัลักษณ์ส าหรับการตัดสนิใจ

ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับการตดัสนิใจ

จากสญัลกัษณ์การตดัสนิใจขัน้ตอนการท างาน คอื พจิารณาคา่ของ X

ถา้คา่ของ X ขณะนัน้มคีา่มากกวา่ 15 ขัน้ตอนการท างานทีต่อ้งการท าในล าดบัถัดไป คอื การท างานในทศิทางทีม่ตีวัอกัษร “Y” ก ากบั ถา้คา่ของ X ขณะนัน้ไม่มากกวา่ 15 คอื นอ้ยกวา่หรอืเทา่กบั 15 ขัน้ตอนการท างานทีต่อ้งท าเป็นล าดบัถัดไป คอื การท างานในทศิทางทีม่ตีวัอกัษร “N” ก ากบั

15XY N

Page 12: Ppt 01

1.10 การแสดงทศิทางการท างานของผงังานการแสดงทศิทางของขัน้ตอนการท างานของผังงาน ใชล้กูศรส าหรับ

การบอกทศิทางของขัน้ตอนการท างาน การใชล้กูศรแสดงทศิทางของขัน้ตอนการท างานนยิมเขยีนจากดา้นบนลงดา้นลา่งหรอืจากดา้นซา้ยไปดา้นขวา ลกูศรทีช่ ีเ้ขา้สูส่ญัลกัษณ์ของผังงานนยิมเขยีนลกูศรชีเ้ขา้ดา้นบนของสญัลกัษณ์ และลกูศรทีช่ ีอ้อกจากสญัลกัษณ์ของผังงานนยิมเขยีนลกูศรชีอ้อกทางดา้นลา่งของสญัลกัษณ์

สญัลักษณ์การแสดงทศิทางการท างานของผังงาน

การเขยีนเสน้ของลกูศรแสดงทศิทางการไหลของผังงานไมน่ยิมเขยีน

เสน้ตดักนั ถา้มขีัน้ตอนการท างานทีต่อ้งเขยีนเสน้ตดักนั ตอ้งพยายามเลีย่งโดยการปรับรปูของโครงสรา้งผังงานใหมห่รอืใชเ้ครือ่งหมายจดุตอ่ชว่ยในการเขยีนผังงาน

Page 13: Ppt 01

ตวัอยา่ง การใชส้ญัลกัษณ์ส าหรับแสดงทศิทางการท างานของผังงาน

ล าดบัขัน้ตอนการท างานของผังงาน คอื ขัน้ตอนแรก ท าการรับคา่ขอ้มลูเขา้มาเก็บไวใ้นตวัแปร A และ B จากนัน้ท าขัน้ตอนของการค านวณคา่ของ A บวกดว้ยคา่ของ B จากนัน้น าผลทีไ่ดไ้ปเก็บไวใ้นตวัแปร X

Read A,B

X = A + B

Page 14: Ppt 01

1.11 จดุตอ่ภายในหนา้เดยีวกนัสญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั ใชส้ าหรับเชือ่มการท างานของ

ผังงานทีอ่ยูใ่นหนา้เดยีวกนั สญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนัใช ้

สญัลกัษณ์ของวงกลม ภายในวงกลมระบหุมายเลขของจดุทีต่อ้งการตอ่เชือ่มถงึกนั จดุตอ่แตล่ะจดุตอ้งมคีูท่ีต่อ้งการเชือ่มถงึกนัเสมอการใชส้ญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั ใชใ้นกรณีทีเ่สน้ส าหรับแสดงทศิทางการท างานของผังงานมคีวามยาวมาก หรอืมจีดุตดัของเสน้ทีใ่ชแ้สดงทศิทางการท างานเกดิขึน้ เพือ่ลดความซบัซอ้นของเสน้ทีใ่ชแ้สดงขัน้ตอนการท างานของผังงาน ท าใหส้ามารถเห็นล าดบัขัน้ตอนการท างานไดอ้ยา่งไม่สบัสน

สญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั

Page 15: Ppt 01

ตวัอยา่ง การใชส้ญัลกัษณ์จดุตอ่ภายในหนา้เดยีวกนั

แสดงเครือ่งหมายจดุตอ่ภายในหนา้เดยีวกนัหมายเลข 1 โดยทีต่ัง้ 2 จดุตอ้งอยูห่นา้เดยีวกนั การท างานของผังงานเสมอืนวา่สองจดุนี้คอืจดุเดยีวกนั และเชือ่มตอ่ถงึกนั

1 1

Page 16: Ppt 01

1.12 จดุตอ่ระหวา่งหนา้สญัลกัษณ์จดุตอ่ระหวา่งหนา้ของผังงานใชส้ญัลกัษณ์รปูหา้เหลีย่ม

สญัลกัษณ์จดุตอ่ระหวา่งหนา้ใชส้ าหรับเชือ่มการท างานของผังงานทีอ่ยูต่า่งหนา้กนั ภายในสญัลกัษณ์ระบหุมายเลขของจดุทีต่อ้งการตอ่เชือ่มถงึกนั จดุตอ่แตล่ะจดุตอ้งคูท่ีต่อ้งการเชือ่มถงึกนัเสมอ

การใชง้านของสญัลกัษณ์จดุตอ่ระหวา่งหนา้ มกีารใชง้านเหมอืนกบัจดุตอ่ภายในหนา้เดยีวกนั ตา่งกนัเพยีงใชส้ าหรับเชือ่มตอ่จดุทีอ่ยูต่า่งหนา้กนั

สญัลักษณ์จดุตอ่ระหวา่งหนา้

ตวัอยา่งที ่1.9การใชส้ญัลกัษณ์จดุตอ่ระหวา่งหนา้

แสดงเครือ่งหมายจดุตอ่ระหวา่งหนา้หมายเลข 1 โดยทีท่ัง้ 2 จดุตอ้งอยูต่า่ง

หนา้กนัการท างานของผังงานเสมอืนวา่สองจดุนีค้อืจดุเดยีวกนั และเชือ่มตอ่ถงึกนั

11

Page 17: Ppt 01

ลกัษณะการเขยีนผงังาน

ลกัษณะของผังงานทีด่ ีควรมลีกัษณะดงันีไ้ปนี้1. ทกุผังงานตอ้งมจีดุเริม่ตน้และจดุสิน้สดุเพยีงอยา่งละหนึง่แหง่

เทา่นัน้2. ทกุสญัลกัษณ์ของผังงานตอ้งมลีกูศรชีท้ศิทางเขา้ และลกูศร

ชีท้ศิทางออกอยา่งละหนึง่ลกูศรยกเวน้สญัลกัษณ์จุดเริม่ตน้ สญัลกัษณ์จดุสิน้สดุ สญัลกัษณ์การตดัสนิใจ และสญัลกัษณ์จดุตอ่

3. สญัลกัษณ์จดุเริม่ตน้มเีฉพาะลกูศรชีท้ศิทางออก สญัลกัษณ์จดุสิน้สดุมเีฉพาะลกูศรชีท้ศิทางเขา้

4. สญัลกัษณ์การตดัสนิใจมลีกูศรชีท้ศิทางเขา้ 1 ทศิทาง มีลกูศรชีท้ศิทางออก 2 ทศิทาง คอื กรณีทีผ่ลทีไ่ดจ้ากการตดัสนิใจเป็นจรงิ และกรณีทีผ่ลทีไ่ดจ้ากการตดัสนิใจเป็นเท็จ

Page 18: Ppt 01

ลกัษณะการเขยีนผงังาน

5. ทศิทางของล าดบัขัน้ตอนการท างาน นยิมเขยีนจากบนลงลา่งหรอืจากซา้ยไปขวา

6. เสน้ของลกูศรทีใ่ชบ้อกทศิทางของล าดบัขัน้ตอนวธิกีารท างาน ไมค่วรเขยีนตดักนัหรอืทับกนั

7. ไมค่วรเขยีนเสน้ของลกูศรเพือ่ท าการเชือ่มโยงล าดบัขัน้ตอนทีอ่ยูห่า่งกนัมากหากจ าเป็นควรใชส้ญัลกัษณ์จดุตอ่แทน

8. การเขยีนผังงานในสว่นของการก าหนดคา่หรอืค านวณคา่นยิมใชเ้ครือ่งหมายลกูศรแทนการใชเ้ครือ่งหมายเทา่กบั เชน่ , สว่นเครือ่งหมายเทา่กบันยิมใชส้ าหรับการเปรยีบเทยีบคา่