บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3...

62
บทที2-2 พื้นฐานการแก้ปัญหาด้วยคอมพิวเตอร์ (Introduction to Problem Solving) 1 สื่อสไลด์นี้ใช้รูปแบบฟอนต์ สารบรรณ รุ่นปรับปรุงใหม่ Sarabun New” สามารถดาวน์โหลดฟอนต์ได้ทีURL : https://www.f 0nt.com/release/th-sarabun-new/

Upload: others

Post on 22-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

บทท 2-2พนฐานการแกปญหาดวยคอมพวเตอร

(Introduction to Problem Solving)

1สอสไลดนใชรปแบบฟอนต สารบรรณ รนปรบปรงใหม “Sarabun New”สามารถดาวนโหลดฟอนตไดท URL : https://www.f0nt.com/release/th-sarabun-new/

Page 2: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนการแกปญหาดวยคอมพวเตอร

1. ท ำควำมเขำใจกบปญหำ

2. พจำรณำขอมลเขำและขอมลออก

3. ทดลองแกไขปญหำดวยตนเอง

4. เขยนขนตอนวธ

5. ทดสอบขนตอนวธ

2

เครองมอ

➢ ผงงำน (Flowchart)

➢ รหสเทยม (Pseudo Code)

Page 3: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รปแบบการท างานของโปรแกรม

ม 3 แบบ คอ

➢ แบบล ำดบ (Sequence)

➢ แบบเลอกท ำ (Selection)

➢ แบบท ำซ ำ (Repetition)

3

Page 4: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงาน (Flowchart)

4

Page 5: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงานแบบล าดบ

➢ เปนโครงสรำงพนฐำนของทกผงงำน

➢ ท ำงำนทละขนตอน

➢ ท ำงำนตำมทศทำงของลกศร

5

Process 2

Process 1

Process 3

Page 6: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบล าดบ

6

x a2 + b2

Begin

End

Read a, b

Write x

1. เรมตนกำรท ำงำน

2. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร a และตวแปร b ตำมล ำดบ

3. ค ำนวณ a2 + b2

แลวน ำคำทไดไปเกบไวในตวแปร x

4. แสดงคำในตวแปร x

5. สนสดกำรท ำงำน

Page 7: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงานแบบเลอกท า

➢ ใชเลอกท ำงำนใหเหมำะสมกบขอมลทประมวลผลอยในขณะนน

➢ ผงงำนแบบเลอกท ำประกอบดวย สญลกษณการตดสนใจ 1 สญลกษณ สวนกำรท ำงำนหลงกำรตดสนใจ จะอยเปนล ำดบถดไป

7

Process 1

ConditionYes No

Process 2 Process 1

ConditionYes

No

Process 1

ConditionNo

Yes

Page 8: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบเลอกท า

8

No

x a - b

Begin

End

Read a, b

Write x

a > bYes

x b - a

1. เรมตนกำรท ำงำน

3. หำกคำของตวแปร a มำกกวำคำของตวแปร bแลว 3.1 ใหน ำคำ a - b ไปเกบไวในตวแปร xไมเชนนน 3.2 ใหน ำคำ b - a ไปเกบไวในตวแปร x

4. แสดงคำในตวแปร x

5. สนสดกำรท ำงำน

2. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร a และตวแปร b ตำมล ำดบ

Page 9: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงานแบบท าซ า

➢ ใชในกรณทตองกำรท ำงำนใดงำนหนงมำกกวำ 1 ครง

➢ โครงสรำงของผงงำนแบบท ำซ ำ ตองม สญลกษณการตดสนใจ เพอตรวจสอบเงอนไขวำ จะเขำสขนตอนกำรท ำซ ำหรอไม

➢ กำรท ำซ ำ แบงไดเปน 2 ลกษณะ คอ

➢ ท ำซ ำในขณะท (While-Do)

➢ ท ำซ ำจนกระทง (Repeat-Until)

9

Page 10: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงานแบบท าซ าในขณะท

➢ ขนตอนแรกของกำรท ำงำน คอ กำรตดสนใจ

➢ หำกเงอนไขเปนจรง จะท ำ Process 1 ซงเรยกวำ “ขนตอนการท าซ า”

➢ เมอท ำเสรจ จะกลบไปตรวจสอบเงอนไขอกครง

➢ หำกเงอนไขเปนเทจ จะออกจากขนตอนการท าซ า เพอท ำงำนอนตอไป

10

Process 1

ConditionYes

No

Page 11: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบท าซ าในขณะท

11

No

a a + 1

Begin

End

Write a

a < 5Yes

a 1

1. เรมตนกำรท ำงำน

3. ในขณะท คำของตวแปร a นอยกวำ 5

4. สนสดกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

Page 12: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผลการท างานของตวอยางผงงานแบบท าซ าในขณะท

12

No

a a + 1

Begin

EndWrite a

a < 5Yes

a 1หนาจอ

ตวแปรa =

Page 13: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผงงานแบบท าซ าจนกระทง

➢ ขนตอนแรกของกำรท ำงำน คอ Process 1 ซงเรยกวำ “ขนตอนการท าซ า”

➢ ถดมำจะเปนกำรตรวจสอบเงอนไข

➢ หำกเงอนไขยงไมเปนจรง จะกลบไปท ำขนตอนการท าซ าอก

➢ แตหำกเปนจรงแลว จะออกจากขนตอนการท าซ า เพอท ำงำนอนตอไป

13

YesNo

Process 1

Condition

Page 14: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบท าซ าจนกระทง

14

No

Begin

End

Yes

a 1

a = 5

a a + 1

Write a

1. เรมตนกำรท ำงำน

3. ท ำซ ำ

4. สนสดกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

จนกระทง a = 5

Page 15: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ผลการท างานของตวอยางผงงานแบบท าซ าจนกระทง

15

หนาจอ

ตวแปรa =

No

Begin

End

Yes

a 1

a = 5

a a + 1

Write a

Page 16: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ความแตกตางระหวาง การท าซ าในขณะท กบ การท าซ าจนกระทง

16

การท าซ าในขณะท(While-Do)

การท าซ าจนกระทง(Repeat-Until)

กำรตรวจสอบเงอนไข ตรวจสอบกอนท ำขนตอนกำรท ำซ ำ

ตรวจสอบหลงท ำขนตอนกำรท ำซ ำ

กำรตดสนใจเพอท ำซ ำ ท ำซ ำเมอผลกำรตรวจสอบเงอนไขเปนจรง

ท ำซ ำเมอผลกำรตรวจสอบเงอนไขเปนเทจ

จ ำนวนกำรท ำซ ำ อำจไมมกำรท ำขนตอนกำรท ำซ ำ หำกผลกำรตรวจสอบเงอนไขเปนเทจตงแตแรก

ท ำขนตอนกำรท ำซ ำอยำงนอย 1 ครง

Page 17: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 1

จงหำพนทสำมเหลยม

เปาหมาย: หำพนทสำมเหลยม

ขอมลออก: พนทสำมเหลยม (A)

ทหำไดจำกสตร พนท = 0.5 x ควำมยำวฐำน x ควำมสง

ขอมลเขา: ควำมยำวฐำน (B)

ควำมสง (H)

17

Page 18: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter Base : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร B

4. แสดงขอควำม “Enter Height : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร H

6. น ำคำ 0.5 x B x H ไปเกบไวในตวแปร A

7. แสดงขอควำม “Area of a Triangle = ”

8. แสดงคำในตวแปร A

9. สนสดกำรท ำงำน

18

Page 19: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter Base : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร B

4. แสดงขอควำม “Enter Height : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร H

6. น ำคำ 0.5 x B x H ไปเกบไวในตวแปร A

7. แสดงขอควำม “Area of a Triangle = ”

8. แสดงคำในตวแปร A

9. สนสดกำรท ำงำน

19

Begin

Write “Enter Base : ”

Read B

Write “Enter Height : ”

Read H

A 0.5 x B x H

Write “Area of a Triangle : ”

Write A

End

Page 20: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 2

จงหำคำต ำสดจำกเลขจ ำนวนเตม 3 จ ำนวน

เปาหมาย: หำคำต ำสดจำกเลขจ ำนวนเตม 3 จ ำนวน

ขอมลออก: คำทต ำทสด (min)

ขอมลเขา: เลขจ ำนวนเตมตวท 1 (n1)

เลขจ ำนวนเตมตวท 2 (n2)

เลขจ ำนวนเตมตวท 3 (n3)

20

Page 21: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter number 1 : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n1

4. แสดงขอควำม “Enter number 2 : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n2

6. แสดงขอควำม “Enter number 3 : ”

7. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n3

21

Page 22: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

8. หำกคำในตวแปร n1 นอยกวำคำในตวแปร n2

แลว

8.1 ใหน ำคำ n1 ไปเกบไวในตวแปร min

ไมเชนนน

8.2 ใหน ำคำ n2 ไปเกบไวในตวแปร min

9. หำกคำในตวแปร n3 นอยกวำคำในตวแปร min

แลว

9.1 ใหน ำคำ n3 ไปเกบไวในตวแปร min

10. แสดงขอควำม “Minimum : ”

11. แสดงคำในตวแปร min

12. สนสดกำรท ำงำน 22

Page 23: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter number 1 : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n1

4. แสดงขอควำม “Enter number 2 : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n2

6. แสดงขอควำม “Enter number 3 : ”

7. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n3

23

Begin

Write “Enter number 1 : ”

Read n1

Write “Enter number 2 : ”

Read n2

Write “Enter number 3 : ”

Read n3

1

Page 24: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

8. หำกคำในตวแปร n1 นอยกวำคำในตวแปร n2

แลว

8.1 ใหน ำคำ n1 ไปเกบไวในตวแปร min

ไมเชนนน

8.2 ใหน ำคำ n2 ไปเกบไวในตวแปร min

9. หำกคำในตวแปร n3 นอยกวำคำในตวแปร min

แลว

9.1 ใหน ำคำ n3 ไปเกบไวในตวแปร min

10. แสดงขอควำม “Minimum : ”

11. แสดงคำในตวแปร min

12. สนสดกำรท ำงำน 24

No

min n1

n1 < n2Yes

min n2

1

n3 < min

min n3

Write “Minimum : ”

Write min

End

Yes

No

Page 25: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

25

Begin

Write “Enter number 1 : ”

Read n1

Write “Enter number 2 : ”

Read n2

Write “Enter number 3 : ”

Read n3

1

1

No

min n1

n1 < n2Yes

min n2

n3 < min

min n3

Write “Minimum : ”

Write min

End

Yes

No

Page 26: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 3

จงแสดงแมสตรคณ โดยรบเลขทใชแทนแมสตรคณทเปนจ ำนวนเตมและมคำตงแต 2 ถง 12

เปาหมาย: แสดงแมสตรคณ

ขอมลออก: ตำรำงสตรคณ ทเปนขอควำม จ ำนวน 12 บรรทด

ขอมลเขา: แมสตรคณ (n) ทเปนจ ำนวนเตมทมคำตงแต 2 ถง 12

ถาคา n ไมไดอยในชวงทระบ จะรบคา n ไปเรอย ๆ

26

Page 27: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. ท ำซ ำ

2.1 แสดงขอควำม “Enter number (2-12) : ”

2.2 รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n

จนกระทง n มคำตงแต 2 ถง 12

27

ขอมลเขา: แมสตรคณ (n) ทเปนจ ำนวนเตมทมคำตงแต 2 ถง 12

ถำคำ n ไมไดอยในชวงทระบ จะรบคำ n ไปเรอย ๆ

Page 28: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

3. ก ำหนดคำ 1 ใหกบตวแปร k

4. ในขณะท คำของตวแปร k นอยกวำหรอเทำกบ 12

4.1 แสดงคำในตวแปร n

4.2 แสดงขอควำม “ x ”

4.3 แสดงคำในตวแปร k

4.4 แสดงขอควำม “ = ”

4.5 แสดงคำของ k x n

4.6 น ำคำ k + 1 ไปเกบไวในตวแปร k

5. สนสดกำรท ำงำน

28

Page 29: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. ท ำซ ำ

2.1 แสดงขอควำม “Enter number (2-12) : ”

2.2 รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n

จนกระทง n มคำตงแต 2 ถง 12

29

No

Begin

Yes

(n ≥ 2) AND (n ≤ 12)

Write “Enter number (2-12) : ”

Read n

1

Page 30: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

3. ก ำหนดคำ 1 ใหกบตวแปร k

4. ในขณะท คำของตวแปร k นอยกวำหรอเทำกบ 12

4.1 แสดงคำในตวแปร n

4.2 แสดงขอควำม “ x ”

4.3 แสดงคำในตวแปร k

4.4 แสดงขอควำม “ = ”

4.5 แสดงคำของ k x n

4.6 น ำคำ k + 1 ไปเกบไวในตวแปร k

5. สนสดกำรท ำงำน

30

No

EndYes

k 1

1

k ≤ 12

Write n

Write “ x ”

Write k

Write “ = ”

Write k x n

k k + 1

Page 31: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

31

1Yes

No

Begin

(n ≥ 2) AND (n ≤ 12)

Write “Enter number (2-12) : ”

Read n

1

No

EndYes

k 1

k ≤ 12

Write n

Write “ x ”

Write k

Write “ = ”

Write k x n

k k + 1

Page 32: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม (Pseudo Code)

32

Page 33: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม

➢ เปนค ำอธบำยกำรท ำงำนของขนตอนวธ (Algorithm)

➢ สวนมำกเขยนดวยภำษำองกฤษทไมค ำนงถงไวยำกรณ และไมขนกบภำษำคอมพวเตอรใด ๆ

➢ หลกการเขยนรหสเทยม

➢ ใชถอยค ำทเขำใจงำย

➢ ในหนงบรรทด มเพยงหนงกำรกระท ำ

➢ เขยนค ำสงกำรท ำงำนจำกบนลงลำง

➢ ใชยอหนำ เพอแสดงกลมของค ำสงทท ำงำนในระดบเดยวกน

33

Page 34: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ ผงงาน รหสเทยม

เรมตนกำรท ำงำน - START- BEGIN

สนสดกำรท ำงำน - STOP- END

รบขอมลเขำมำในโปรแกรม - READ A- GET A

แสดงผลขอมลออกจำกโปรแกรม - WRITE A- OUTPUT A

กำรก ำหนดคำ A 0

กำรค ำนวณ C A + B34

Begin

End

Read A

Write A

A 0

C A + B

Page 35: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ ผงงาน รหสเทยม

กำรเลอกท ำ IF เงอนไข THENค ำสง 1

ELSEค ำสง 2

IF เงอนไข THENค ำสง 1

35

ค ำสง 1

เงอนไขYes No

ค ำสง 2

ค ำสง 1

เงอนไขYes

No

Page 36: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ ผงงาน รหสเทยม

กำรเลอกท ำ (ตอ) IF เงอนไข THENELSE

ค ำสง 1

IF เงอนไข 1 THENค ำสง 1

ELSEIF เงอนไข 2 THEN

ค ำสง 2ELSE

ค ำสง 336

ค ำสง 1

เงอนไขNo

Yes

ค ำสง 1

เงอนไข 1Yes

No

ค ำสง 2

เงอนไข 2 No

ค ำสง 3Yes

Page 37: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ ผงงาน รหสเทยม

กำรท ำซ ำในขณะท WHILE เงอนไข DOค ำสง (หรอ ชดค ำสง)

กำรท ำซ ำจนกระทง REPEATค ำสง (หรอ ชดค ำสง)

UNTIL เงอนไข

37

ค ำสง

เงอนไขYes

No

YesNo

ค ำสง

เงอนไข

Page 38: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

การท างานแบบล าดบ

38

Page 39: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบล าดบ

39

x a2 + b2

Begin

End

Read a, b

Write x

1. เรมตนกำรท ำงำน

2. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร a และตวแปร b ตำมล ำดบ

3. ค ำนวณ a2 + b2

แลวน ำคำทไดไปเกบไวในตวแปร x

4. แสดงคำในตวแปร x

5. สนสดกำรท ำงำน

BEGIN

READ a, b

x a2 + b2

WRITE x

END

รหสเทยม

Page 40: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

การท างานแบบเลอกท า

40

Page 41: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบเลอกท า

41

No

x a - b

Begin

End

Read a, b

Write x

a > bYes

x b - a

1. เรมตนกำรท ำงำน

3. หำกคำของตวแปร a มำกกวำคำของตวแปร bแลว

3.1 ใหน ำคำ a - b ไปเกบไวในตวแปร xไมเชนนน

3.2 ใหน ำคำ b - a ไปเกบไวในตวแปร x

4. แสดงคำในตวแปร x

5. สนสดกำรท ำงำน

2. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร a และตวแปร b ตำมล ำดบ

Page 42: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

42

1. เรมตนกำรท ำงำน

3. หำกคำของตวแปร a มำกกวำคำของตวแปร bแลว

3.1 ใหน ำคำ a - b ไปเกบไวในตวแปร xไมเชนนน

3.2 ใหน ำคำ b - a ไปเกบไวในตวแปร x4. แสดงคำในตวแปร x5. สนสดกำรท ำงำน

2. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร a และตวแปร b ตำมล ำดบ

BEGIN

IF a > b THENx a - b

ELSEx b - a

WRITE xEND

READ a, b

รหสเทยม

Page 43: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

การท างานแบบท าซ า

43

Page 44: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบท าซ าในขณะท

44

No

a a + 1

Begin

End

Write a

a < 5Yes

a 1

1. เรมตนกำรท ำงำน

3. ในขณะท คำของตวแปร a นอยกวำ 5

4. สนสดกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

Page 45: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

45

รหสเทยม

1. เรมตนกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3. ในขณะท คำของตวแปร a นอยกวำ 5

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

4. สนสดกำรท ำงำน

BEGIN

a 1

WHILE a < 5 DO

a a + 1

WRITE a

END

Page 46: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางผงงานแบบท าซ าจนกระทง

46

No

Begin

End

Yes

a 1

a = 5

a a + 1

Write a

1. เรมตนกำรท ำงำน

3. ท ำซ ำ

4. สนสดกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

จนกระทง a = 5

Page 47: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

47

รหสเทยม

1. เรมตนกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร a

3. ท ำซ ำ

3.1 น ำคำ a + 1 ไปเกบไวในตวแปร a

3.2 แสดงคำในตวแปร a

จนกระทง a = 5

4. สนสดกำรท ำงำน

BEGIN

a 1

REPEAT

a a + 1

WRITE a

UNTIL a = 5

END

Page 48: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 1

จงหำผลบวกของเลขจ ำนวนจรง 2 จ ำนวน

เปาหมาย: หำผลบวกของเลขจ ำนวนจรง 2 จ ำนวน

ขอมลออก: ผลบวก (sum)

ขอมลเขา: เลขจ ำนวนจรงตวท 1 (n1)

เลขจ ำนวนจรงตวท 2 (n2)

48

Page 49: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter number 1 : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n1

4. แสดงขอควำม “Enter number 2 : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n2

6. น ำคำ n1 + n2 ไปเกบไวในตวแปร sum

7. แสดงขอควำม “Result = ”

8. แสดงคำในตวแปร sum

9. สนสดกำรท ำงำน

49

Page 50: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter number 1 : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n1

4. แสดงขอควำม “Enter number 2 : ”

5. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร n2

6. น ำคำ n1 + n2 ไปเกบไวในตวแปร sum

7. แสดงขอควำม “Result = ”

8. แสดงคำในตวแปร sum

9. สนสดกำรท ำงำน

50

รหสเทยม

BEGIN

END

WRITE “Enter number 1 : ”

WRITE “Enter number 2 : ”

READ n1

WRITE “Result = ”

sum n1 + n2

READ n2

WRITE sum

Page 51: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 2

จงตดเกรดจำกคะแนนทเปนเลขจ ำนวนเตมทมคำไมต ำกวำ 0 ตำมเงอนไขตอไปน

80 – 100 ไดเกรด A

70 – 79 ไดเกรด B

60 – 69 ไดเกรด C

50 – 59 ไดเกรด D

ต ำกวำ 50 ไดเกรด F

51

เปาหมาย: หำเกรดจำกคะแนนขอมลออก: เกรด (g)ขอมลเขา: คะแนน (s)

ถำคะแนนต ำกวำ 0 จะเปนอยำงไร?

Page 52: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. แสดงขอควำม “Enter score : ”

3. รบขอมลเขำ แลวน ำมำเกบไวในตวแปร s

4. หำก s ≥ 0 แลว

4.1 หำก 80 ≤ s ≤ 100 แลว

4.1.1 น ำคำ “A” ไปเกบไวในตวแปร g

ไมเชนนน

4.1.2 หำก s ≥ 70 แลว

4.1.2.1 น ำคำ “B” ไปเกบไวในตวแปร g

52

Page 53: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

ไมเชนนน

4.1.2.2 หำก s ≥ 60 แลว

4.1.2.2.1 น ำคำ “C” ไปเกบไวในตวแปร g

ไมเชนนน

4.1.2.2.2 หำก s ≥ 50 แลว

4.1.2.2.2.1 น ำคำ “D” ไปเกบไวในตวแปร g

ไมเชนนน

4.1.2.2.2.2 น ำคำ “F” ไปเกบไวในตวแปร g

4.2 แสดงขอควำม “Grade = ” แลวตำมดวยคำในตวแปร g

5. สนสดกำรท ำงำน53

Page 54: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม

BEGINWRITE “Enter score : ”

READ s

IF s ≥ 0 THEN

IF s ≥ 80 AND s ≤ 100 THEN

g “A”

ELSE

IF s ≥ 70 THEN

g “B”

ELSE

54

IF s ≥ 60 THEN

g “C”

ELSE

IF s ≥ 50 THEN

g “D”

ELSE

g “F”

WRITE “Grade = ”, g

END

Page 55: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม แบบ ELSE IF

BEGINWRITE “Enter score : ”

READ s

IF s ≥ 0 THEN

IF s ≥ 80 AND s ≤ 100 THEN

g “A”

ELSE IF s ≥ 70 THEN

g “B”

55

ELSE IF s ≥ 60 THEN

g “C”

ELSE IF s ≥ 50 THEN

g “D”

ELSE

g “F”

WRITE “Grade = ”, g

END

Page 56: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ตวอยางท 3

จงตงรหสผำนแลวรบคำเขำมำตรวจสอบวำมคำตรงกบรหสทตงเอำไวหรอไม

ถำตรงกน จะแจงวำ “รหสถกตอง” แลววนกลบไปใหตงรหสผำนใหม

แตถำไมตรงกน จะแจงวำ “รหสไมถกตอง”

หำกใสรหสผดครบ 3 ครง ใหจบกำรท ำงำน

56

เปาหมาย: ทำยรหสผำนขอมลออก: ผลกำรตรวจสอบขอมลเขา: รหสผำน (pwd)

Page 57: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ

1. เรมตนกำรท ำงำน

2. ก ำหนดคำ 1 ใหกบตวแปร k

3. ในขณะท คำของตวแปร k นอยกวำหรอเทำกบ 3

3.1 หำกคำของตวแปร k เทำกบ 1 แลว

3.1.1 แสดงขอควำม “Enter new password : ”

3.1.2 รบขอมลเขำ แลวน ำมำเกบไวในตวแปร pwd

3.2 แสดงคำของตวแปร k แลวตำมดวยขอควำม “Enter password : ”

3.3 รบขอมลเขำ แลวน ำมำเกบไวในตวแปร pwd2

57

Page 58: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

ขนตอนวธ (ตอ)

3.4 หำกคำของตวแปร pwd เทำกบคำของตวแปร pwd2 แลว3.4.1 แสดงขอควำม “Password correct!!!”3.4.2 ก ำหนดคำ 1 ใหกบตวแปร kไมเชนนน3.4.3 แสดงขอควำม “Password not correct!!!”3.4.4 น ำคำ k + 1 ไปเกบไวในตวแปร k

4. แสดงขอควำม “Close program.”

5. สนสดกำรท ำงำน

58

Page 59: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม

1. BEGIN

2. k 1

3. WHILE k ≤ 3 DO

3.1 IF k = 1 THEN

3.1.1 WRITE “Enter new password : ”

3.1.2 READ pwd

3.2 WRITE k, “ Enter password : ”

3.3 READ pwd2

59

Page 60: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

รหสเทยม (ตอ)

3.4 IF pwd = pwd2 THEN3.4.1 WRITE “Password correct!!!”3.4.2 k 1ELSE3.4.3 WRITE “Password not correct!!!”3.4.4 k k + 1

4. WRITE “Close program.”

5. END

60

Page 61: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

BEGIN

k 1

WHILE k ≤ 3 DO

IF k = 1 THEN

WRITE “Enter new password : ”

READ pwd

WRITE k, “ Enter password : ”

READ pwd2

61

IF pwd = pwd2 THEN

WRITE “Password correct!!!”

k 1

ELSE

WRITE “Password not correct!!!”

k k + 1

WRITE “Close program.”

END

Page 62: บทที่ 2-2 - compro.rmutt.ac.th€¦ · 9. หำกค่ำในตัวแปร n3 น้อยกว่ำค่ำในตัวแปร min แล้ว 9.1 ให้น

จบบทท 2-2พนฐานการแกปญหาดวยคอมพวเตอร

(Introduction to Problem Solving)

62สอสไลดนใชรปแบบฟอนต สารบรรณ รนปรบปรงใหม “Sarabun New”สามารถดาวนโหลดฟอนตไดท URL : https://www.f0nt.com/release/th-sarabun-new/