งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Concept of Programing.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Concept of Programing."— ใบสำเนางานนำเสนอ:

1 Concept of Programing

2 ขั้นตอนการพัฒนาโปรแกรม มี 5 ขั้นตอน
วิเคราะห์ปัญหา (Analysis) วางแผนและออกแบบ (Planning & Design) เขียนโปรแกรม (Coding) ทดสอบโปรแกรม (Testing) จัดทำคู่มือ (Documentation)

3 โจทย์ที่ใช้อธิบายขั้นตอนการพัฒนาโปรแกรม
จงเขียนโปรแกรมรับค่าเลขจำนวนเต็ม 2 จำนวนและหาผลบวกของเลขทั้ง 2 จำนวนนั้น

4 วิเคราะห์ปัญหา (Analysis)
1 ขั้นตอนนี้เป็นขั้นตอนที่สำคัญที่สุด ผู้เขียนโปรแกรมต้องวิเคราะห์ว่าจะเขียน โปรแกรมแก้ปัญหาอย่างไร ผู้เขียนโปรแกรมต้องวิเคราะห์ด้วยว่าต้องนำ ข้อมูลอะไรบ้างเข้าในโปรแกรม

5 วิเคราะห์ปัญหา (Analysis)
1 1. ปัญหา คือ รับค่าเลขจำนวนเต็ม 2 จำนวนและหาผลบวก ผลรวม = เลขจำนวนเต็มตัวที่ 1 + เลขจำนวนเต็มตัวที่ 2 2. ตัวแปรที่ใช้ คือ X ใช้เก็บเลขจำนวนเต็มตัวที่ 1 Y ใช้เก็บเลขจำนวนเต็มตัวที่ 2 SUM ใช้เก็บผลรวม

6 3. ข้อมูลนำเข้า คือ ค่าของ X และ Y 4
3. ข้อมูลนำเข้า คือ ค่าของ X และ Y 4. ผลลัพธ์ คือ คำนวณหาผลบวก จากสูตร SUM = X + Y ขั้นตอนการทำงาน 1. รับค่า X และ Y เข้ามาในโปรแกรม 2. คำนวณหาผลบวก จากสูตร SUM = X + Y

7 วางแผนและออกแบบ (Planning & Design)
2 ซูโดโค้ด (Pseudocode) START READ X READ Y COMPUTE SUM=x + Y PRINT SUM STOP เขียนลำดับการทำงานของโปรแกรม โดยใช้ประโยคภาษาอังกฤษที่สื่อความหมายง่าย ๆ

8 โฟลวชาร์ต (Flowchart)
START เขียนลำดับการทำงานของการเขียนโปรแกรม โดยแทนด้วยสัญลักษณ์เป็นตัวสื่อความหมาย INPUT X,Y SUM=X+Y PRINT SUM STOP

9 สัญลักษณ์การเขียนอัลกอลิทึมแบบโฟลวชาร์ต
สัญลักษณ์รูปภาพ ความหมาย จุดเริ่มต้น (start) หรือ จุดสิ้นสุด (End) รับข้อมูล (Input) หรือ แสดงผลข้อมูล (Output) รับข้อมูลนำเข้าจากคีย์บอร์ด (Input from Keyboard)

10 สัญลักษณ์การเขียนอัลกอลิทึมแบบโฟลวชาร์ต
สัญลักษณ์รูปภาพ ความหมาย การคำนวณ (Process) การตัดสินใจ (Dicision) หรือ การเปรียบเทียบ (Compare) แสดงผลข้อมูลออกทางเครื่องพิมพ์ (Printer)

11 สัญลักษณ์การเขียนอัลกอลิทึมแบบโฟลวชาร์ต
สัญลักษณ์รูปภาพ ความหมาย การทำงานย่อย (Sub Program) จุดเชื่อมต่อ (Connection) ทิศทาง (Flow)

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

13 ตัวอย่างที่ 1 วิเคราะห์ปัญหา
จงเขียนโฟลวชาร์ตแสดงขั้นตอนการหาพื้นที่ของรูปสี่เหลี่ยมคางหมู วิเคราะห์ปัญหา 1. ปัญหา คือ ต้องการคำนวณหาพื้นที่ของรูปสี่เหลี่ยมคางหมู จากสูตร พื้นที่สี่เหลี่ยมคางหมู = ½ x ผลบวกของด้านคู่ขนาน x สูง 2. ตัวแปรที่ใช้ คือ w1 ใช้เก็บความยาวของด้านคู่ขนานด้านที่ 1 w2 ใช้เก็บความยาวของด้านคู่ขนานด้านที่ 2 h ใช้เก็บความสูงของรูปสี่เหลี่ยมคางหมู Area ใช้เก็บพื้นที่ของรูปสี่เหลี่ยมคางหมู

14 3. ข้อมูลนำเข้า คือ ค่าของ W1,W2 และh 4
3. ข้อมูลนำเข้า คือ ค่าของ W1,W2 และh 4. ผลลัพธ์ คือ คำนวณพื้นที่ของรูปสี่เหลี่ยมคางหมู จาก สูตร Area= ½ x(w1+w2)xh ขั้นตอนการทำงาน 1. รับค่า w1,w2,h เข้ามาในโปรแกรม 2. คำนวณหาพื้นที่ของรูปสี่เหลี่ยมคางหมู จากสูตร Area = ½ x (w1+w2) x h

15 Flowchart ตัวอย่างที่ 1
START INPUT w1,w2,h Area =1/2 x(w1+w2)x h STOP

16 START START INPUT w1,w2,h INPUT w1,w2,h Area =1/2 x(w1+w2)x h Area =1/2 x(w1+w2)x h Area Area STOP STOP

17 เขียนโปรแกรม (Coding)
3 เป็นการนำอัลกอลิทึมในขั้นตอนที่ 2 มาเขียน โปรแกรมตามหลักไวยากรณ์ (Syntax)ภาษาซี

18 เขียนโปรแกรม (Coding)
3 #include <stdio.h> viod main(viod) { int x,y,sum; printf(“Value of x is : ”); scanf(“%d”,&x); printf(“Value of y is : ”); scanf(“%d”,&y); sum=x+y; printf(“Sum of %d+%d is %d\n”,x,y,sum); }

19 เขียนโปรแกรม (Coding)
3 #include <stdio.h> viod main(viod) { int x,y,sum; printf(“Value of x is : ”); scanf(“%d”,&x); printf(“Value of y is : ”); scanf(“%d”,&y); sum=x+y; printf(“Sum of %d+%d is %d\n”,x,y,sum); } INPUT X INPUT Y SUM = X+Y PRINT SUM

20 ทดสอบโปรแกรม (Testing)
4 เป็นการนำผลลัพธ์จากขั้นตอนที่ 3 มาทำการ Run แล้วทดสอบโดยการป้อนค่า x และ y เข้าไปใน โปรแกรม และตรวจสอบผลลัพธ์ที่ได้ว่าถูกต้อง หรือไม่ หากไม่ถูกต้องก็กลับไปทำการแก้ไข โปรแกรมอีกครั้ง

21 จัดทำคู่มือ (Documentation)
5 จุดประสงค์ที่สำคัญของการจัดทำคู่มือเพื่อ ช่วยให้ผู้อื่นศึกษาซอร์สโค้ดของโปรแกรมได้ ง่ายขึ้น จะเป็นประโยชน์สำหรับการพัฒนา เพิ่มเติมในอนาคต สิ่งที่สำคัญสำหรับการ จัดทำคู่มือ คือ “คู่มือมีรายละเอียดมากที่สุด”

22 ลักษณะของการเขียนผังงาน
ตามลำดับ (Sequence) เป็นส่วนงานที่ต้องทำตามลำดับ ก่อน-หลัง Set x to 0 คือ x=0 Input x หรือ Read x Print x หรือ Show x Compute x=x+y Add 1 to x Divide total by 3 (total / 3) Divide total by 3 to s (x=total/3) Command A Command B Command C

23 เลือกทำ(Selection) การเลือกทำแบบเลือกทำทางเดียว เรียกว่า if-then จริง
Command A Condition จริง เท็จ If condition then Read x End if หรือ If x<5 then

24 เลือกทำ(Selection) การเลือกทำแบบสองทางเลือก เรียกว่า if-then-else จริง
Command A Command B Condition จริง เท็จ If condition then Print ‘xxx’ Else Print ‘yyy’ Print ‘zzz’ End if

25 เลือกทำ(Selection) การเลือกจากกลุ่มรายการที่มีจำนวนมากกว่าสองทาง เรียกว่า CASE Condition Command A Command B Command C Command D

26 case grade of 4 : write ‘A’ 3 : write ‘B’ 2 : write ‘C’ 1 : write ‘D’ 0 : write ‘F’ endcase

27 การทำซ้ำ (Looping) การทำงานซ้ำแบบตรวจสอบเงื่อนไขก่อนทำ เรียกว่า Do-While (ทำในขณะที่ เช่น X<=10) Command B Condition จริง เท็จ Command A DoWhile A<10 Read x Compute x=x+5 Write x End Do

28 การทำซ้ำ (Looping) การทำงานซ้ำแบบตรวจสอบเงื่อนไขหลังทำ เรียกว่า Repeat-Until (ทำจนกระทั้ง เช่น X=10) Command A เท็จ Condition จริง Command B

29 ตัวอย่างที่ 2 จงคำนวณหาเกรดวิชาคอมพิวเตอร์ของนักศึกษาชั้นปีที่ 1 จากแฟ้มข้อมูล คะแนน พร้อมทั้งแสดงเกรดของนักศึกษาแต่ละคน โดยเกณฑ์ที่ใช้ ในการตัดเกรด คือ คะแนน เกรด ตั้งแต่ 80 ขึ้นไป A 70 ถึง 79 B 60 ถึง 69 C 50 ถึง 59 D น้อยกว่า 49 F ชื่อ คะแนน สมพร 70 สมชัย 85 สมศักดิ์ 45 สมชาย 73 สมศรี 66

30 วิเคราะห์ปัญหา 1. ปัญหา คือ ต้องการคำนวณหาเกรดวิชาคอมพิวเตอร์นักศึกษาชั้นปีที่ 1 โดยอ่านข้อมูลชื่อและคะแนนจากไฟล์ 2. ตัวแปรที่ใช้ คือ point ใช้เก็บคะแนนนักศึกษา grade ใช้เก็บเกรดของนักศึกษา 3. ข้อมูลนำเข้า คือ ค่าคะแนนของนักศึกษา โดยการอ่านจากไฟล์ การพิจารณาว่าอ่านไฟล์ข้อมูลว่าจบหรือยัง IF EOF THEN STOP ELSE END IF

31 ชื่อ เกรด สมพร B สมชัย A สมศักดิ์ F สมชาย สมศรี C
4. ผลลัพธ์ คือ เกรดของนักศึกษา ซึ่งได้จากการนำคะแนนของนักศึกษาคนนั้น ๆ มาพิจารณาตามเกณฑ์ที่กำหนด ตัวอย่างผลลัพธ์ที่ได้ ชื่อ เกรด สมพร B สมชัย A สมศักดิ์ F สมชาย สมศรี C

32 ขั้นตอนการทำงาน 1. อ่านชื่อนักศึกษาและคะแนนจากแฟ้มข้อมูล 2. ตรวจสอบค่าคะแนนของนักศึกษาว่าอยู่ในช่วงใด และ ได้เกรดเท่าไร 3. แสดงชื่อและเกรดของนักศึกษาแต่ละคน 4. ทำรายการของนักศึกษาคนต่อไป โดยวนกลับไปทำ ขั้นตอนที่ 1

33 ตัวอย่างที่ 3 วิเคราะห์ปัญหา
จงเขียนโฟลวชาร์ตแสดงการหาผลบวกของเลขคู่ที่มีค่าอยู่ในช่วง 1 ถึง 100 วิเคราะห์ปัญหา 1. ปัญหา คือ ต้องทำการคำนวณหาผลบวกของเลขคู่ในช่วง 1 – 100 2+4+6+…+100=? 2. ตัวแปรที่ใช้ คือ Count ใช้เก็บค่าตัวบวก Sum ใช้เก็บผลบวก 3. ข้อมูลนำเข้า ไม่มี 4. ผลลัพธ์ คือ ผลบวกของเลขคู่ทั้งหมดที่อยู่ในช่วง

34 กำหนดค่าเริ่มต้นให้ Count และ Sum เป็น 0
ขั้นตอนการทำงาน กำหนดค่าเริ่มต้นให้ Count และ Sum เป็น 0 เพิ่มค่าตัวบวกเพื่อเป็นตัวบวกตัวถัดไป คือ Count=Count+2 ตรวจสอบตัวแปร Count ว่ามีค่ามากกว่า 100 หรือไม่ หากมากกว่า 100 ให้จบการทำงาน หากไม่มากกว่า 100 ให้ทำขั้นตอนต่อไป คำนวณ Sum=Sum+Count แล้วกลับไปทำขั้นตอนที่ 2 อีกครั้ง

35 โฟลวชาร์ตแสดงการหาผลบวกของเลขคู่จาก 1 - 100
START Count = 0 Sum = 0 Count = Count + 2 Count > 100 Sum = Sum + Count STOP

36 ตัวอย่างที่ 4 วิเคราะห์ปัญหา
จงเขียนโฟลวชาร์ตแสดงการแปลงค่าจากคริสตศักราชไปเป็นพุทธศักราช พร้อมทั้งแสดงผลลัพธ์ โดยแยกส่วนของการรับค่าข้อมูล ค.ศ. ออกจากส่วนของการแปลงค่าจาก ค.ศ. ไปเป็น พ.ศ. (Sub Program) วิเคราะห์ปัญหา ปัญหา คือ ต้องการแปลงค่าข้อมูลจาก ค.ศ. ไปเป็น พ.ศ. จากสูตร พ.ศ. = ค.ศ ตัวแปรที่ใช้ คือ BE ใช้เก็บค่าปี ค.ศ. CE ใช้เก็บค่าปี พ.ศ.

37 ข้อมูลนำเข้า คือ ค่าปี ค.ศ. โดยรับค่ามาเก็บไว้ใน ตัวแปร CE
ผลลัพธ์ คือ ค่าปี พ.ศ. ซึ่งได้จากการแปลงค่าปี ค.ศ. โดยใช้สูตร BE = CE + 543

38 ขั้นตอนการทำงาน 1. รับค่า CE 2. ทำการเรียกโปรแกรมย่อยขึ้นมาทำงาน
3. โปรแกรมย่อยทำการแปลงค่าจาก ค.ศ. ไปเป็น พ.ศ. BE = CE + 543 4. กลับสู่การทำงานที่โปรแกรมหลักอีกครั้ง และแสดง ผลลัพธ์

39 โฟลวชาร์ตแสดงการแปลง ค.ศ. ไปเป็น พ.ศ.
START INPUT CE CONVERTION PRINT BE END CONVERTION BE = CE + 543 RETURN


ดาวน์โหลด ppt Concept of Programing.

งานนำเสนอที่คล้ายกัน


Ads by Google