การแก้ปัญหาโปรแกรม (Flowchart)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
การเขียนผังงาน (Flowchart)
Advertisements

เรื่อง การแก้ไขปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
โครงสร้างโปรแกรมภาษา C
ความรู้พื้นฐานเกี่ยวกับการเขียนโปรแกรม
Chapter 8 : Logic Modeling & Data Modeling
การจำลองความคิด รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
การทำงานแบบเลือกทำ (Selection)
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
การเขียนผังงาน.
ตัวอย่าง Flowchart.
การแก้ปัญหาด้วยคอมพิวเตอร์
ผังงานโปรแกรม (Program Flowchart)
แผนผัง FlowChart Flow Chart คือ ขั้นตอนที่นำผลที่ได้จากการกำหนดและการ วิเคราะห์ปัญหามาเขียนเป็นแผนภาพหรือสัญลักษณ์ ประโยชน์ของผังงาน -ช่วยลำดับขั้นตอนการทำงานของโปรแกรม.
หน่วยที่ 1 ระบบคอมพิวเตอร์
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
วิชา การออกแบบและพัฒนาซอฟต์แวร์
หน่วยที่ 2 วิธีการออกแบบโปรแกรม
การจำลองความคิด
Surachai Wachirahatthapong
การออกแบบโปรแกรมอย่างมีโครงสร้าง Structured Design
การเขียนผังงานแบบโครงสร้าง
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
การเขียนโปรแกรมแบบมีทางเลือก
การเขียนโปรแกรมภาษาซี
ผังงาน (Flowchart) มหาวิทยาลัยเนชั่น หลักการภาษาชุดคำสั่ง
Systems Analysis and Design
การเขียนผังงาน.
1 การอ่านตำรา การอ่านตำรา.
การเขียนผังงาน (Flowchart)
ใบงานที่ 5 สัญลักษณ์ (Flowchart)
การเขียนผังงาน จุดประสงค์ 1.อธิบายความของผังงานได้
Flow Chart INT1103 Computer Programming
บทที่ 2 หลักการแก้ปัญหา
การเขียนอัลกอริทึม แบบโฟลวชาร์ต
การออกแบบโปรแกรม ขั้นตอนการแก้ปัญหา การนิยามปัญหา (Problem definition)
การแก้ปัญหาด้วยคอมพิวเตอร์
โจทย์วิเคราะห์ปัญหาที่ 1
2.1 วิธีแก้ปัญหาด้วยคอมพิวเตอร์ (Computer problem solving methods)
การออกแบบโครงสร้าง (Structured Design)
การเขียนโปรแกรมเบื้องต้น
หลักการเขียนโปรแกรม ( )
หลักการเขียนโปรแกรม ( )
หลักการเขียนโปรแกรม ( )
ใบงาน 1. ให้นักเรียนคัดลอกเนื้อหาและตัวอย่างเรื่อง การวิเคราะห์ปัญหาและการจำลองความคิดตั้งแต่สไลด์ที่ 2-11 ลงในสมุด (ถ้าไม่มีให้ทำในกระดาษสมุด1คู่) 2.
การเขียนผังงาน (Flowchart)
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
บทที่ 7 การวิเคราะห์งานและการโปรแกรม แบบมีโครงสร้าง
ผังงาน (FLOW CHART) ตัวอย่างผังงาน
หลักการและวิธีการแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
งานเทคโนโลยีสารสนเทศ โรงเรียนพนมเบญจา
แบบทดสอบหลังเรียนวิชา เทคโนโลยีสารสนเทศ 2
ผังงาน (FLOW CHART) ส่วนประกอบของผังงาน (Flow Chart)
Chapter 04 Flowchart ผู้สอน อ.ยืนยง กันทะเนตร
หลักการเขียนโปรแกรม ( )
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
หลักการเขียนโปรแกรม ( )
เด็กหญิง นัฐนรี โยธาตรี เลขที่ 13 ม.3/1
การเขียน แบบวนซ้ำ , วนลูป
หน่วยการเรียนรู้ที่ 3 การเขียน Flow Chart.
การเขียนผังงาน ผังงาน (Flowchart)
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
การออกแบบสื่อเพื่อการศึกษา ADDIE Model
การเขียนผังงาน (Flowchart)
Chapter 05 Selection structure ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
ผังงานโปรแกรม (Program Flowchart)
วิชาคอมพิวเตอร์ คุณครูภาราดร ฟุ้งเฟื้อง
(Flowchart) ผังงาน.
ใบสำเนางานนำเสนอ:

การแก้ปัญหาโปรแกรม (Flowchart) อาจารย์เมธยา ราชคมน์ สำนักวิชาเทคโนโลยีสารสนเทศและการสื่อสาร

การแก้ปัญหาโปรแกรม ทำความเข้าใจกับปัญหา ค้นหาจุดมุ่งหมายหรือสิ่งที่โจทย์ต้องการ โดยการสำรวจองค์ประกอบของปัญหา 3 ส่วน คือ วิเคราะห์ข้อมูลนำเข้า (Input Analysis) วิเคราะห์ขั้นตอนการทำงาน (Process Analysis) วิเคราะห์ผลลัพธ์ (Output Analysis) IPO Analysis Introduction to C

IPO Analysis & IPO Chart Input โจทย์หรือผู้ใช้กำหนดให้ หรือมีอยู่แล้ว และนำมาประกอบในการแก้ปัญหาได้ (มาใช้ใน process) Process วิธีการหรือลำดับขั้นตอนที่ใช้ในการแก้ปัญหา Output ผลลัพธ์ที่ได้จากการแก้ปัญหา , สิ่งที่โจทย์ต้องการ IPO Chart แผนภาพหรือตารางคำอธิบายแสดง Input, Process, Output Introduction to C

-------------------------- ตัวอย่าง เขียนโปรแกรมอ่านเลข 3 จำนวน หาผลรวมและพิมพ์ผลลัพธ์ออกมา Input -------------- ตัวเลข # 1 ตัวเลข # 2 ตัวเลข # 3 Process -------------------------- อ่านเลข 3 ค่าเข้ามา บวกกันหาผลรวม จัดพิมพ์ออก Output ---------- ผลรวม Introduction to C

-------------------------- ตัวอย่าง เขียนโปรแกรมคำนวณหาพื้นที่ของวงกลม Input -------------- รัศมี (r) Process -------------------------- อ่านรัศมีของวงกลม(r) เข้ามา พื้นที่ = 3.14 * r * r จัดพิมพ์ออก Output ---------- พื้นที่ Introduction to C

ตัวอย่าง เขียนโปรแกรมคำนวณเงินเดือนของพนักงานโดย ตัวอย่าง เขียนโปรแกรมคำนวณเงินเดือนของพนักงานโดย ถ้าชั่วโมงการทำงานในเดือนนั้นๆ ไม่เกิน 160 ชั่วโมง เงินเดือนจะถูกคำนวณโดยใช้อัตราค่าแรงตามปกติ ถ้าชั่วโมงการทำงานเกิน 160 ชั่วโมง 160 ชั่วโมงแรกจะใช้อัตราค่าแรงปกติ ชั่วโมงที่เกินมาจะคิดค่าแรงโดยใช้อัตราของค่าล่วงเวลา (OT) ซึ่งเท่ากับ 1.5 เท่าของอัตราค่าแรงปกติ Introduction to C

ขั้นตอนที่ 1 การวิเคราะห์ปัญหา รหัสพนักงาน (ID) , จำนวนชั่วโมงการทำงาน (H) , อัตราค่าแรง (S) Input รับค่า ID , H , S ถ้า H < 160 , เงินเดือน = H * S ถ้า H > 160 , เงินเดือน = ( (H-160) * 1.5 * S ) + (160 * S) พิมพ์ค่ารหัสพนักงานและค่าเงินเดือนที่ได้ Process Output รหัสพนักงานและจำนวนเงินเดือนที่ได้รับ Introduction to C

Flowchart Symbol Meaning Graphical representation Tool for programmers to develop program logic Interchange logic between programmers Symbol Meaning Terminator Symbol ใช้แสดงตำแหน่งของจุดเริ่มต้น จุดสิ้นสุดโปรแกรม Process Symbol ใช้ในการคำนวณ Input/Output Symbol ใช้ในการรับข้อมูล การแสดงผลข้อมูล   

Display /Monitor Symbol ใช้เมื่อต้องการระบุให้แสดงข้อมูลบนจอภาพ Meaning Display /Monitor Symbol ใช้เมื่อต้องการระบุให้แสดงข้อมูลบนจอภาพ Document Symbol ใช้เมื่อต้องการระบุให้แสดงข้อมูลบนเครื่องพิมพ์ Decision Symbol ใช้ในการเปรียบเทียบเงื่อนไขหรือตัดสินใจ Keyboard Symbol ใช้ในการรับข้อมูลจากแป้นพิมพ์ External Subroutine Symbol ใช้เรียกฟังก์ชันต่าง ๆ ที่ Compiler สร้างไว้แล้ว  Introduction to C

Comment Symbol ใช้แสดงความเห็น คำอธิบาย หรือข้อสังเกตต่าง ๆ Meaning Comment Symbol ใช้แสดงความเห็น คำอธิบาย หรือข้อสังเกตต่าง ๆ Flowline Symbol ใช้เป็นจุดเชื่อมต่อระหว่างสัญลักษณ์ On-page Connector Symbol ใช้ในการเชื่อมโยงในหน้าเดียวกัน Off-page Connector Symbol ใช้ในการเชื่อมโยงไปหน้าอื่น   Introduction to C

Examples: Terminator Symbol Process Symbol  

Examples: Input/Output Symbol Display/Monitor Symbol 

Examples: Document Symbol Decision Symbol 

Examples: External Subroutine Symbol Internal Subroutine Symbol

Examples: Keyboard and Comment Symbol Offpage Connector Symbol

Examples: Flowline Symbol On-page Connector Symbol  

ประโยชน์ของผังงาน ช่วยให้สามารถทำความเข้าใจลำดับขั้นตอนการทำงานของโปรแกรมหรือระบบใดๆ ได้อย่างรวดเร็ว แสดงลำดับขั้นตอนการทำงาน ทำให้สามารถเขียนโปรแกรมได้อย่างเป็นระบบไม่สับสน ตรวจสอบความถูกต้องของขั้นตอนการแก้ปัญหา รวมถึงความถูกต้องของโปรแกรมได้ง่าย เป็นอิสระต่อภาษาที่ใช้ในการเขียนโปรแกรม Introduction to C

ลักษณะโครงสร้างของผังงาน ผังงานโดยทั่วไปจะประกอบด้วยโครงสร้างพื้นฐาน 3 รูปแบบต่อไปนี้คือ โครงสร้างแบบลำดับ (Sequence Structure) โครงสร้างแบบทางเลือก (Selection Structure) โครงสร้างแบบทำซ้ำ (Iteration Structure) Introduction to C

โครงสร้างแบบลำดับ (Sequence Structure) เริ่มต้น “ เป็นโครงสร้างพื้นฐานของผังงาน และเป็นลักษณะขั้นตอนการทำงานที่พบมากที่สุด คือทำงานทีละขั้นตอนตามลำดับ ” รับค่ารัศมีวงกลม pi = 3.14 พื้นที่วงกลม = pi * รัศมี * รัศมี แสดงพื้นที่วงกลม Flowchart การคำนวณหาพื้นที่วงกลม จบ Introduction to C

แสดง รหัสพนักงานและเงินเดือน โครงสร้างแบบทางเลือก (Selection Structure) เริ่มต้น “ รูปแบบที่ง่ายที่สุดของโครงสร้างแบบนี้คือ การเลือกแบบมีทางออก 2 ทาง ” อ่านค่า รหัสพนักงาน ชั่วโมงการทำงาน อัตราค่าแรง เงินเดือน = ((ชั่วโมงการทำงาน-160)  1.5  อัตราค่าแรง) + (160  อัตราค่าแรง) ชั่วโมง การทำงาน > 160 ใช่ ไม่ใช่ เงินเดือน = ชั่วโมงการทำงาน * อัตราค่าแรง แสดง รหัสพนักงานและเงินเดือน จบ Introduction to C

โครงสร้างแบบทำซ้ำ (Iteration Structure) “โครงสร้างนี้จะทำงานอย่างเดียวกันซ้ำไปเรื่อยๆ ในขณะที่ยังเป็นไปตามเงื่อนไข ” เริ่มต้น J = 1 J <= 5 ไม่ใช่ ใช่ แสดงค่า J จบ J = J+1 Introduction to C

ตัวอย่างที่ 1 โปรแกรมในการรับค่าตัวเลข 2 ค่าจากคีย์บอร์ด แล้วพิมพ์ผลบวกของเลขทั้ง 2 ออกที่จอภาพ start Read a,b sum = a+b write sum stop

ตัวอย่างที่ 2 โปรแกรมรับค่าตัวเลข 2 ค่าจากคีย์บอร์ด แล้วพิมพ์ค่าที่มีค่าน้อยกว่าออกทางจอภาพ start Read a,b yes no a < b write b write a stop

ตัวอย่างที่ 3 โปรแกรมรับค่าตัวเลข 2 ค่าจากคีย์บอร์ด แล้วพิมพ์ค่าที่มีค่าน้อยกว่าออกทางจอภาพ แต่ถ้าเท่ากันก็จะพิมพ์ข้อความบอกผู้ใช้ว่ามันเท่ากัน start Read a,b a < b no no b < a yes write a yes write b write “equal” stop

ตัวอย่างที่ 4 โปรแกรมคำนวณหาผลบวกของตัวเลขตั้งแต่ 1 – 5 และแสดงผลลัพธ์ที่ได้ออกทางหน้าจอ start stop write sum i = 1 i<=5 sum=sum+i i++ yes no sum = 0

แบบฝึกหัด จงเขียน Flowchart เพื่อหาผลบวกของตัวเลข 2+3 และแสดงผลลัพธ์ที่ได้ออกทางหน้าจอ จงเขียน Flowchart เพื่อคำนวนหาพื้นที่ของรูปสามเหลี่ยมมุมฉาก (ผู้ใช้ป้อน ?) จงเขียน Flowchart เพื่อแปลงค่าปี คศ. ให้เป็นปี พศ. (ผู้ใช้ป้อน ?) จงเขียน Flowchart เพื่อรับค่าตัวเลข 1 ตัวจากคีย์บอร์ด จากนั้นโปรแกรมจะบอกผู้ใช้ว่าตัวเลขที่ผู้ใช้ป้อนเข้ามาเป็นเลขจำนวนเต็มบวกหรือเลขจำนวนเต็มลบ(สมมุติให้ผู้ใช้ไม่มีทางป้อนเลข 0) Introduction to C

แบบฝึกหัด จงเขียน Flowchart เพื่อรับค่าตัวเลขเข้ามา 3 ตัว จากนั้นจึงพิมพ์ตัวเลขที่มีค่าน้อยที่สุดออกทางหน้าจอ (สมมุติให้ตัวเลขทั้ง 3 ตัวต้องแตกต่างกัน) เขียน Flowchart เพื่อพิมพ์ตัวเลขที่ตั้งแต่ 1 ถึง 50 ออกทางหน้าจอ เขียน Flowchart เพื่อหาผลรวมของเลขคู่ที่อยู่ระหว่าง 1 ถึง 200 โดยแสดงผลลัพธ์ออกทางหน้าจอ เขียน Flowchart เพื่อหาค่าเฉลี่ยของตัวเลขที่อยู่ระหว่าง 1 ถึง 10 โดยแสดงผลลัพธ์ออกทางหน้าจอ Introduction to C

แบบฝึกหัด เขียน Flowchart เพื่อหาผลรวมของตัวเลขตั้งแต่ 1 – n และแสดงผลลัพธ์ออกทางหน้าจอ โดยให้ n เป็นตัวเลขที่ผู้ใช้ป้อนให้แก่โปรแกรม จงเขียน Flowchart สำหรับวนรอบรับค่าตัวเลข แล้วแสดงค่าตัวเลขที่รับเข้ามาออกทางจอภาพ โดยที่เมื่อรับค่าตัวเลขเป็น -999 จะสิ้นสุดการวนรอบและจบโปรแกรม จงเขียน Flowchart สำหรับวนรอบรับค่าตัวเลข และในระหว่างรับให้หาผลรวมของตัวเลขที่รับเข้ามา โปรแกรมจะหยุดรับค่าเมื่อใส่ตัวเลข -999 และจะแสดงผลรวมของตัวเลขทั้งหมดที่รับเข้ามาและหยุดทำงาน Introduction to C

โจทย์ต้องการ: แสดงผลรวมที่มีค่าน้อยกว่าหรือเท่ากับ 10 EX. หาผลรวมของตัวเลข 2 ตัว (A, B) หากผลรวม (SUM) ดังกล่าวมีค่าน้อยกว่าหรือเท่ากับ 10 ให้แสดงผลรวมนั้น แล้วออกจากการทำงาน แต่ถ้าหากมากกว่า 10 ให้ออกจากการทำงาน วิเคราะห์โจทย์ โจทย์ต้องการ: แสดงผลรวมที่มีค่าน้อยกว่าหรือเท่ากับ 10 ส่วนนำเข้า (Input): ตัวเลข 2 ตัว แทนค่าด้วย A และ B กระบวนการ (Process): ผลรวม = ตัวเลข A + ตัวเลข B [หรือ SUM = A + B] ถ้า SUM <= 10 ให้แสดง SUM แล้วออกจากการทำงาน ถ้า SUM > 10 ให้ออกจากการทำงาน ส่วนนำออก (Output): ผลรวมที่มีค่าน้อยกว่าหรือเท่ากับ 10 Introduction to C

start Read A, B Input Process SUM = A+B SUM <= 10 yes Write SUM no Output Write SUM stop Introduction to C

รับค่าข้อมูลจากคีย์บอร์ด start Read A, B รับค่าข้อมูลจากคีย์บอร์ด Read A, B SUM = A+B SUM <= 10 yes Write SUM พิมพ์ผลลัพธ์ ออกทางเครื่องพิมพ์ Write SUM Write SUM แสดงผลออกทางหน้าจอ no stop Introduction to C

Read A, B start Read A, B SUM = A+B SUM <= 10 yes Write SUM no รับค่าข้อมูลจากคีย์บอร์ด start Read A, B SUM = A+B SUM <= 10 yes Write SUM no Write SUM stop พิมพ์ผลลัพธ์ออกทางเครื่องพิมพ์ Introduction to C

พท.สามเหลี่ยม= ½ *สูง *ฐาน จงเขียน Flowchart เพื่อคำนวนหาพื้นที่ของรูปสามเหลี่ยมมุมฉาก (ผู้ใช้ป้อน?) เริ่ม อ่าน สูง, ฐาน พท.สามเหลี่ยม= ½ *สูง *ฐาน เขียน พท.สามเหลี่ยม จบ Introduction to C

เขียน Flowchart เพื่อพิมพ์ตัวเลขที่ตั้งแต่ 1 ถึง 50 ออกทางหน้าจอ start i = 1 no i<=50 yes write sum i++ stop Introduction to C

จงเขียนผังงานในการคำนวณหาพื้นที่ของรูปสี่เหลี่ยมด้านเท่าในส่วนที่แรเงาดังในรูป ซึ่งผู้ใช้จะป้อนรัศมีของวงกลมเข้ามา โดยแสดงผลลัพธ์ออกที่จอภาพ Start Read r Pi = 3.14 Result = [2(r) * 2(r)] – [Pi * r *r] Circle = Pi * r *r Square = 2(r) * 2(r) Result = Square - Circle Write Result stop Introduction to C

#include <stdio.h> #include <conio.h> void main() { } int r; double area, pi; pi = 3.14; clrscr(); printf( "Enter radius: " ); scanf( "%d", &r ); area = ((r+r)*(r+r)) + (pi*r*r); /* คำนวณพื้นที่แรเงา*/ printf("Shadow area is %f\n", area); Introduction to C

แบบฝึกหัด จงเขียน flowchart ในการคำนวณเกรดของนิสิต โดยโปรแกรมจะรับคะแนน 1 ค่าจากผู้ใช้(score) แล้วพิมพ์เกรดที่ได้ออกทางจอภาพ โดยมีกฏว่า ถ้า score >= 80 ได้เกรด A ถ้า 70 <= score < 79 ได้เกรด B ถ้า 60 <= score < 69 ได้เกรด C ถ้า 50 <= score < 59 ได้เกรด D ถ้า score <= 49 ได้เกรด F Introduction to C

start read score write A write B stop no score >= 80 yes write A yes write B stop Introduction to C

write D write F write F no no 50<= score <59 no score <= 49 yes write D Introduction to C